python selenium打包后出错的问题
刚开始学习selenium,在pycharm中运行正常,使用pyinstaller -F 打包后提示出错。错误代码如下请教问题出在哪?我看说是路径出错了。但是不太明白为什么会这样。
```
Traceback (most recent call last):
File "selenium\webdriver\common\service.py", line 71, in start
File "subprocess.py", line 854, in __init__
File "subprocess.py", line 1307, in _execute_child
FileNotFoundError: 系统找不到指定的文件。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "sh1.4.py", line 7, in <module>
File "selenium\webdriver\chrome\webdriver.py", line 70, in __init__
File "selenium\webdriver\chromium\webdriver.py", line 90, in __init__
File "selenium\webdriver\common\service.py", line 81, in start
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://chromedriver.chromium.org/home
Failed to execute script 'sh1.4' due to unhandled exception!
```
这个是python的代码
```
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
chrome_options = Options()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(options=chrome_options)
driver.get("http://youtonwangluo.cn/#/login?redirect=%2FbillDetail%2FbillDetail_examine")
print('开始打开网页')
driver.find_element("name", "username").send_keys("0000002")
driver.find_element("name", "password").send_keys("123456")
print('登录成功')
driver.find_element("class name", "el-button--primary").click()
time.sleep(5)
driver.find_element("class name", "el-icon-search").click()# 查找开始
print('开始更新数据')
try:
n = 10
for i in range(10):
time.sleep(5)
driver.find_element("class name", "el-checkbox__inner").click()
time.sleep(1)
driver.find_element("class name", "el-icon-s-help").click()
time.sleep(1)
driver.find_element("class name", "el-button--primary").click()
print(n, "条数据已审核")
n = n + 10
except:
driver.close()
print("自动审核已完成")
``` Message: 'chromedriver' executable needs to be in PATH
我猜测打包没问题,应该是没把浏览器驱动和打包好的exe文件放在一起 我之前打包过的,没问题的,不需要浏览器驱动放一起打包,直接打包的py脚本 唯爱丶雪 发表于 2022-3-17 21:34
我之前打包过的,没问题的,不需要浏览器驱动放一起打包,直接打包的py脚本
但是打包好要把浏览器驱动放一起
driver = webdriver.Chrome(options=chrome_options)
说明浏览器驱动默认路径和程序路径是一样的 xhtdtk 发表于 2022-3-17 21:37
但是打包好要把浏览器驱动放一起
driver = webdriver.Chrome(options=chrome_options)
说明浏览器驱动 ...
问题解决。需要把驱动放到一起才能使用。 不放在一起也没关系,但你要指定驱动的路径,不然就会像你这样找不到 不错,学习了。 看错误提示: Message: 'chromedriver' executable needs to be in PATH.
需要为chromedriver配置环境变量或者在代码中设置驱动路径,如果是默认的话就需要把驱动和打包后的程序放在一起 马了顶大 发表于 2022-3-17 23:43
看错误提示: Message: 'chromedriver' executable needs to be in PATH.
需要为chromedriver配置环境变量 ...
明白了。谢谢 环境变量吧
页:
[1]