Selenium项目运行自动化脚本时出现USB设备描述符读取失败错误
[2520:5920:0905/012434.497:ERROR:device_event_log_impl.cc(214)] [01:24:34.498] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: A device attached to the system is not functioning. (0x1F)
[2520:5920:0905/012434.500:ERROR:device_event_log_impl.cc(214)] [01:24:34.501] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: A device attached to the system is not functioning. (0x1F)
错误原因
该报错是Chrome/Chromium内核浏览器在Windows系统下扫描外接USB设备时抛出的底层日志,不属于Selenium脚本的逻辑错误,不会影响脚本的正常运行。
触发根因是浏览器调用Windows USB设备接口时,某一个外接的USB设备(例如U盘、外接键鼠、USB摄像头、加密盾等)存在驱动异常、接口接触不良的问题,导致浏览器无法读取设备描述符,最终输出该报错日志。
解决方案
根据实际需求可选择任意一种处理方式:
- 直接忽略:如果自动化脚本功能运行完全正常,仅控制台多出该报错日志,不需要做任何处理,该日志不会干扰脚本执行逻辑。
- 屏蔽日志输出:如果不希望在控制台看到这类无关报错,可以在初始化ChromeDriver时添加启动参数过滤日志,Python示例代码如下:
from selenium import webdriver chrome_options = webdriver.ChromeOptions() # 方式1:排除Chrome的日志输出开关 chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"]) # 方式2:直接禁用Chrome的USB设备扫描功能 chrome_options.add_argument("--disable-usb-discovery") driver = webdriver.Chrome(options=chrome_options)
- 根源修复:如果需要彻底消除该报错,可以逐一拔出当前电脑连接的USB外设,定位到触发异常的设备,更新对应设备驱动或者更换USB接口重新插入即可。
内容的提问来源于stack exchange,提问作者Animesh Singh
相关产品推荐
相关产品推荐

