首页 > 解决方案 > Pycharm 成功运行无头脚本但终端抛出错误

问题描述

大家好,

options = Options()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
dr = webdriver.Chrome(ChromeDriverManager().install(), options=options)
dr.get("url")

cWait = WebDriverWait(dr, 5)
usernameField = cWait.until(EC.presence_of_element_located((By.ID, "txtUserID")))

在运行上面的代码行集时,当我单击 pycharm 运行此 python 文件时,它可以很好地无头运行,但是当我使用终端并编写类似的代码时

python main.py

控制台给出这个输出

====== WebDriver manager ======
Current google-chrome version is 92.0.4515
Get LATEST driver version for 92.0.4515
Driver [C:\Users\bc62700\.wdm\drivers\chromedriver\win32\92.0.4515.107\chromedriver.exe] found in cache

DevTools listening on ws://127.0.0.1:53298/devtools/browser/b967343c-b07a-43a3-8d1f-d8b41e62e50d
[0906/071237.616:INFO:CONSOLE(19)] "Uncaught TypeError: Cannot read property 'txtUserID' of undefined", source: URL (19)

使用 pycharm 运行按钮绝对可以正常工作,但不能使用终端请帮助,因为这个原因我无法将其作为计划事件。

标签: pythonpython-3.xselenium-webdriverwebdriversystem-variable

解决方案


当您从 pycharm 中运行它时,它使用的是特定的 python,它可能与您系统的默认 python 不同。检查 pycharm 中的运行配置并查看它正在使用的 python 版本的路径,并尝试使用该 python 的完整路径执行它,而不是python main.py类似于/path/to/your/project/venv/bin/python /path/to/your/project/main.py

如果不是这样,请尝试对您的情况提供更完整的解释,以便有人可以尝试重现正在发生的事情并进一步调查。


推荐阅读