Python:如何打印广告用户的手机号码?

2024-05-23 14:34:35 发布

您现在位置:Python中文网/ 问答频道 /正文

恐怕我又有点卡住了。我一直在网上搜寻可能需要做同样事情的人,似乎确实有一些人做到了,但我无法把所有的拼图拼凑在一起。在

简而言之:我需要得到广告中列出的所有用户的手机号码

到目前为止,最简单、最简单的方法似乎是Tim Golden的active_directory模块,它让我了解到目前为止我的代码看起来如何(基本上是他示例代码的直接复制和粘贴):

#!/usr/bin/env python
import active_directory

def main():

    for user in active_directory.search (objectCategory='Person', objectClass='User'):
      print user

if __name__ == '__main__':
    main()

上面的代码很管用,但我就是不知道如何在输出中包含移动电话号码。我不知道AD/LDAP中的字段名是什么,但我怀疑它是“MobileTelephoneNumber”。在

有没有人知道一种快速而肮脏的方法来为每个用户包括手机号码?不一定只有号码,可能都是联系方式。在

编辑

我猜测我需要稍微修改一下代码,如下所示:

^{pr2}$

不过,这似乎行不通。我相信一定有什么办法可以做到的,但我似乎想不通。如果我能弄清楚这个数字到底存储在广告里的什么地方,我也许最终能弄清楚,但上面似乎没有太多的信息,或者至少我能理解。在

编辑2:
多亏了ivan iu pozdeev,我能够看到我需要的属性(“mobile”),但我仍然不知道如何通过Python实际打印它。。。有没有一种方法可以通过Python打印LDAP对象的完整属性,如果是的话,通过activeüdirectory模块?在

编辑3:
别担心,我现在明白了。一旦我有了或多或少能用的代码,我会把它放回这里,以防其他人碰到我的砖墙。在

编辑#4:
原来我有点白痴。这显然与使用以下代码一样简单:

    for user in active_directory.search (objectCategory='Person', objectClass='User'):
      print user, user.mobile

再次感谢ivan_pozdeev的帮助,非常感谢:)


Tags: 模块方法代码用户in编辑forsearch
1条回答
网友
1楼 · 发布于 2024-05-23 14:34:35

请参阅我的帖子中的编辑4。我也没有真正解决这个问题,但多亏了用户伊万波兹迪耶夫(ivan_pozdeev)为我指出了正确的方向。在

对于任何其他在将来无意中看到这篇文章的人,请获取adexplorer,然后查看您希望打印的属性的名称。如果属性名为“mobile”,则可以通过指定用户.mobile(和我一样)。在

蒂姆·戈尔登,如果你读过这篇文章的话,你会发现在ActiveDirectory模块上做得很好。它只是设法挽救了我的培根。在

相关问题 更多 >