Selenium环境搭建报错

ValueError:timeout value connect was (object object at 0*00001C53C9E8610),but it must be an int,float or None.
使用python版本3.12(64-bit)
编辑器:VScode1.79.2
selenium版本:3.141.0
Chrome版本:114.0.5735.199
Chromedriver:114.0.5735.16(win32)
环境变量已添加至path.(python目录下)
添加socker timeout问题依旧存在。
更换firefoxdriver问题依旧存在。

img

代码s发一下,我看看对错。

是selenium版本和urllib3版本不兼容问题。更换urllib3版本:

pip uninstall urllib3
pip install urllib3==1.26.2

也可以更换selenium版本

是不是开启了代理,

参考 https://www.selenium.dev/documentation/webdriver/browsers/chrome/

你的图片代码中的webdriver.Chrome时没有指定Chrome浏览器的可执行文件路径。你可以在webdriver.Chrome方法中传入Chrome浏览器的可执行文件路径,是不是少了个.exe? 你把这一行这样改一下试试:

driver = webdriver.Chrome(r'C:\Users\1\AppData\Local\Programs\Python\Python312\chromedriver.exe')

如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

问题已解决,selenium模块版本bug,卸载后降级到2.53.0完美解决

这个简单,下载谷歌浏览器,然后下载对应的驱动放在谷歌浏览器的安装目录,这一点至关重要,然后把谷歌浏览器和驱动弄个环境变量就可以啦,很简单的

代码就那么四行,代码是没有任何问题的。所以,我觉得应该是你的selenium的版本和Chrome的版本不匹配的问题。建议检查下selenium和Chrome的版本是否匹配。尝试升级或降级版本看看是否你能够解决你的问题。

可能是使用的selenium版本和Chromedriver版本不兼容,或者没有正确配置Chrome浏览器的扩展程序。

selenium环境搭建
有现成的,可以一步步操作


Selenium——环境搭建_selenium配置环境_伊布-白昼流星的博客-CSDN博客 Selenium环境搭建_selenium配置环境 https://blog.csdn.net/weixin_44742274/article/details/128403926

版本不兼容问题

根据您提供的错误信息和环境配置,该错误通常是由于selenium中的socket timeout设置问题引起的。为了解决此问题,您可以尝试以下几个步骤:

  1. 确保您的Chrome浏览器版本与Chromedriver版本匹配。您提供的Chrome浏览器版本是114.0.5735.199,而Chromedriver版本是114.0.5735.16。请确保使用的Chromedriver版本与您的Chrome浏览器版本完全匹配。您可以从ChromeDriver官方网站(https://sites.google.com/a/chromium.org/chromedriver/)下载适合您Chrome版本的Chromedriver。

  2. 检查您的代码中是否设置了socket timeout,并确保其参数类型正确。socket timeout应该是int、float或None类型。请检查您的代码中是否正确设置了socket timeout,并确保timeout值是int、float或None类型。

  3. 如果您仍然遇到问题,尝试更新您的selenium版本到最新稳定版。可以使用以下命令通过pip更新selenium:

    pip install --upgrade selenium
    

    这将确保您使用的是最新版本的selenium库。

  4. 如果以上步骤都没有解决问题,您可以尝试重装Chrome浏览器、Chromedriver和selenium库,确保它们都是最新版本,并且匹配的正确。

如果您尝试了上述步骤但问题仍然存在,请提供更多的错误信息和相关代码,以便更详细地帮助您解决问题。

1、您的错误信息是ValueError: Timeout value connect was <object object at 0x000002A40BE37F80>, but it must be an int, float or None.,这意味着您在设置selenium的超时时间时,传入了一个错误的参数类型,而不是一个整数、浮点数或者None。
2、您可以检查一下您的代码中,是否有使用driver.set_page_load_timeout()或者requests.get()等方法,并且传入了一个超时时间参数。如果是的话,您需要确保这个参数是一个数字或者None,而不是一个对象或者其他类型。
3、您可以尝试修改或者删除这个参数,或者使用try...except语句来捕获和处理TimeoutException异常。这样可以避免您的代码因为超时而报错或者卡住。
4、您还可以检查一下您的网络连接是否正常,以及您的selenium和chromedriver版本是否匹配和更新。有时候,网络延迟或者版本不兼容也会导致超时或者其他问题。