gpt4 book ai didi

python - 如何让 pybluez 每 X 秒返回一次已发现设备的列表然后重复?

转载 作者:太空宇宙 更新时间:2023-11-03 14:34:44 25 4
gpt4 key购买 nike

我一直在努力弄清楚如何使用 pybluez监控附近的设备...

我希望能够运行我的程序并让它每 20 秒搜索一次设备。问题是,如何让 pybluez 很好地放置? :/

使用他们的示例代码 http://code.google.com/p/pybluez/source/browse/trunk/examples/simple/inquiry.py ,很容易让它发现设备。您运行该代码,它会吐出 MAC 地址,如果您愿意,还会吐出设备名称。

我怎样才能把它放在一个循环中?我一直在玩弄下面的代码,但它失败了 >.<

import bluetooth

def search():
while True:
devices = bluetooth.discover_devices(lookup_names = True)

yield devices

for addr, name in search():
print "{0} - {1}".format(addr, name)

最佳答案

这段代码对我有用:

'''
Created on Nov 16, 2011
@author: Radu
'''
import time
import bluetooth

def search():
devices = bluetooth.discover_devices(duration=20, lookup_names = True)
return devices

if __name__=="__main__":
while True:
results = search()
if (results!=None):
for addr, name in results:
print "{0} - {1}".format(addr, name)
#endfor
#endif
time.sleep(60)
#endwhile

它搜索设备 20 秒,然后休眠 1 分钟,所有这些都在无限循环中。我在 Windows 上工作,在 Serioux BT Dongle 上使用默认的 Windows 驱动程序。

希望对您有所帮助。

关于python - 如何让 pybluez 每 X 秒返回一次已发现设备的列表然后重复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3342760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com