无敌のpeach 发表于 2021-11-19 19:28

selenium自动化求助

用python折腾了下selenium自动化,chrome和chromedriver版本都是96.0.4664.45,设置了环境变量,运行代码自动打开一个“date.;”窗口,过几秒就自动关闭了。

放狗找解决方案,都说chromedriver版本不对,可是我这个已经是对的了,stackoverflow上也有很多提问的,没找到个能解决的。这问题到底咋整?

代码如下:
from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])

chrome_path = r'D:\Program Files\Chrome_96.0.4664.45_64bit_Portable\App\chromedriver.exe'
driver = webdriver.Chrome(chrome_path, options=chrome_options)
url = 'http://www.baidu.com/'
driver.get(url)Traceback (most recent call last):
File "F:/Python练习/爬虫/se学习.py", line 8, in <module>
    driver = webdriver.Chrome(chrome_path, options=chrome_options)
File "C:\Users\Luke\anaconda3\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 76, in __init__
    RemoteWebDriver.__init__(
File "C:\Users\Luke\anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
File "C:\Users\Luke\anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Users\Luke\anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
File "C:\Users\Luke\anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: unable to discover open pages


进程已结束,退出代码为 1


Python3 发表于 2021-11-19 23:10

无敌のpeach 发表于 2021-11-19 23:27

Python3 发表于 2021-11-19 23:10
用你的代码运行了一下,第一次出错,第二次正常。你用的是Chrome_96.0.4664.45_64bit_Portable,你指定chro ...

谢谢我搞定了,应该是不支持绿色版的chrome,装个安装版就正常了

糊状物 发表于 2021-11-20 00:33

仅就这点来说,我就喜欢puppeteer这种不用自己去折腾浏览器的

忘归然 发表于 2021-11-20 12:43

谷歌要内置puppeteer录制自动化脚本了

—— 来自 S1Fun

沉默之声 发表于 2021-11-20 14:21

selenium浏览器闪退问题也遇到过,重装了一个在线下载的chrome解决的

mixxiu 发表于 2021-11-23 13:37

puppeteer好用

系统杀手 发表于 2021-11-23 13:41

看代码lz用的portable版的Chrome? 换官方安装版的试试。

正确在隔离环境里跑Chrome的方法是把Chrome运行在docker里。然后用selenium grid调用。
页: [1]
查看完整版本: selenium自动化求助