来自套接字导入MSG_WAITALL的PyObex

时间:2017-09-25 18:27:37

标签: android python sockets bluetooth

更新:我能够使用Python 2.7和PyOBEX在Linux OS上运行。我仍然不知道下面的原因,但怀疑是因为我的机器是窗户或我安装它的方式。

我希望从Android发送带OBEX(OBject EXchange)的文件。我正在使用Windows 10.我已经安装了PyBluez和PyOBEX。我正在尝试运行PyOBEX文档页面上给出的示例。

from PyOBEX.client import BrowserClient
port = 12
addr = '5C:AF:06:E1:81:7B'
client = BrowserClient(addr, port)
client.connect()
client.listdir()
client.disconnect()

但是当我尝试导入时,我收到此错误。

  

文件" pyobexTest",第1行,in       来自PyOBEX.client导入BrowserClient文件" C:\ Python27 \ lib \ site-packages \ PyOBEX \ client.py",第26行,in       来自常见的导入OBEX_Version文件" C:\ Python27 \ lib \ site-packages \ PyOBEX \ common.py",第24行,in       来自套接字导入MSG_WAITALL ImportError:无法导入名称MSG_WAITALL

我正在关注此链接:Python and Bluetooth/OBEX,我看到有人在XP上收到同样的消息。这是否意味着PyOBEX不适用于Windows 10?有没有办法纠正这个错误,或者可能是另一个对Windows更有效的库?顺便说一句,我使用的是Python 2.7(我也试过3.6,而且似乎也有一些问题)。

1 个答案:

答案 0 :(得分:1)

很抱歉听到您在Windows上遇到问题,尤其是最近的问题,因为Windows上的MSG_WAITALL问题已经很久以前修复了,但修复程序可能不在PyPIEX的PyPI分布式版本中。

这些天来维护包并从这个存储库中分发:

https://bitbucket.org/dboddie/pyobex

PyOBEX也应该与Python 3一起使用,但你需要使用python3分支而不是默认分支。