问题标签 [pyudev]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 udev 检查插入的设备是否可热插拔
我有一个 python 脚本来插入设备详细信息。我正在使用 udev 库来管理连接的设备。
从我的 python 脚本中,我想检查插入的设备是否可热插拔。如何使用 udev 库找到它。
早些时候我使用 HAL 库来管理设备。在 HAL 中,我能够从 HAL 设备的“storage.hotpluggable”属性中获取此信息。
请帮忙。提前致谢....
python - 如何检测python上连接了新的usb设备
我想做一些在后台运行的东西,只有在计算机检测到新设备连接后,其余的代码才会运行,有没有优雅的方法来做这样的事情?
python-3.x - 在 python3 中定义文件描述符 - 使用 pyudev/evdev
我目前正在尝试检测树莓派 3 上的蓝牙按钮的连接(该部分有效),一旦连接,检测按钮何时被按下(该部分无效)。
我从 evdev 提供的代码开始,并尝试对其进行调整以供我使用(见下文),但我无法创建正确的文件描述符以与 select 一起使用(如果我正确理解发生了什么)。
问题是当我尝试添加设备时,没有定义 dev.fd。我试图定义它,但我不知道如何定义文件描述符。我应该怎么办 ?
其他信息:运行 Raspbian Strech 和 Python 3.5.3 的 Raspberry Pi 3
另外,这是我关于 Stack Overflow 的第一个问题,所以如果有任何遗漏或可能更详细,请随时提及。
谢谢,
庞'
python - 如何监控 USB 设备的插入?
我正在尝试在 USB 设备插入时对其进行监控。一些测试脚本失败了,我很确定应该可以正常工作。
^^什么都不做。没有错误,没有输出。
我试试
输出以下错误:
dbus 在 Linux Mint 和 Pi3 上都阻止了我
如何在 python3 中监控 USB 设备?
python - 使用来自 pyudev 的监视器终止 USBdetector 线程
我有一个在远程设备上运行的 python 脚本。将创建两个不同的线程。创建第一个线程以监视与设备的 USB 连接。
如果全局变量状态发生变化,我尝试插入一个 break 语句。但它没有用。像这样简单的东西
我查看了https://pyudev.readthedocs.io/en/latest/api/pyudev.html并通过阅读它看起来像这部分代码
是一个无限循环,除非插入超时而不是 None。我想在另一个线程结束时杀死线程。如果我为我的主线程发出退出命令,这个 usbdetector 就会继续运行。关于如何阻止它的任何建议?
(更新)
嘿,
抱歉,我现在采用了一种低技术的方式来解决我的问题。
如果有人知道如何在不需要第二个循环的情况下跳出这个 for 循环,请告诉我
显然,我将 for 循环嵌套在 while 循环中,等待终止为真。它简单且有效,但是仍然想知道是否有办法在 iter() 循环中退出 for 设备。
python - 使用 PyQt5 和 pyudev 通知 QML 的“usb 设备插入”事件
我有一个 GUI 应用程序(使用 PyQt5 和 QML 制作)并且想在 USB 设备从计算机上插入或拔出时得到通知。经过一番调查,我发现 pyudev 可能是要使用的库。但我无法将它与 PyQt5 和 QML 一起使用。我已成功将pyudev 示例用于 MonitorObservor,文档中还提供了其他示例,此处为 PySide和这里是 Glib。我还在这里找到了一个使用 PyQt5 和小部件应用程序的示例。但我无法在我的 PyQt5 QML 应用程序上实现这一点。我相信这很容易,所以我想我只是错过了一些东西,但我不知道是什么......
这是我到目前为止所拥有的:
拔出或重新插入设备时,我已成功在控制台上打印“测试”,但似乎无法打印设备信息(TypeError: device_connected() missing 1 required positional argument: 'device'
当我取消注释时def device_connected(self, device):
)。
第一步是能够在控制台上打印设备信息,然后找到通知 GUI 的方法,最后仅在插入或拔出的设备具有指定的 VID/PID 时才通知 GUI。
编辑:我找到了一种通过 VID PID 识别设备的方法,使用vid = device.get('ID_VENDOR_ID')
和pid = device.get('ID_MODEL_ID')
对于第二步,我曾想过使用 Passerelle 类作为 QML 后端:
但我不确定这是一个好主意,因为我读到文章中读到需要在进入 qt 的主循环之前启动监视器。我的理解是:监视器应该在调用 app.exec_() 之前在 main.py 中启动...
预先感谢您的帮助 !
python - Linux:在 PyQt5 GUI 上显示所有当前连接的 USB 记忆棒的名称
以下代码显示了 Linux 上控制台(作为 PyQt5 GUI 的替代品)中新插入的 USB 记忆棒的名称。
不幸的是,一旦您在未正确弹出 U 盘的情况下拔出 U 盘,控制台中就会出现pyudev.device._errors.DeviceNotFoundAtPathError 。
需要更改什么来修复此错误?
主.py:
python - 如何使用python检测是否插入了USB设备?
我想创建一个脚本,一旦将 USB 驱动器插入计算机,它就会检测到,现在只是在 cmd detect中打印。
注意我使用windows搜索后发现我需要使用pyudev包才能与串口通信,并且我需要知道USB设备的供应商ID。
我试图编写以下代码:
但系统崩溃并显示此错误:
我认为 fcntl 仅适用于 Ubuntu,因为我尝试安装该软件包但它不存在。
python - 当我在 python 中放置在树莓派中时,如何获取 USB 设备的文件目录后检测它?
我使用 pyudev 来检测何时将 USB 设备放置在树莓派中。但是我需要获取它的文件目录,以便在检测到它之后将 excel 文件保存在 USB 中
代码是:
python-3.x - 如何获得usb pendrive的容量?
我需要获得未安装的 USB pendrive 的容量。我正在使用 pyudev 来检测它,但我不知道如何获得容量。我阅读了一些关于 pyusb 的文档,但没有发现任何有用的东西。任何的想法?