Python中使用Selenium遇到ValueError: Timeout value connect错误解决方法

       近期重装了系统,需要做个爬虫,最初想用Selenium和Msedge模拟浏览器操作,但总是不成功,即使是用webdriver打开网页这样最简单的操作,也无法做到,总是显示ValueError: Timeout value connect was <object object at 0x……>, but it must be an int, float or None。

      怀疑是设置问题,将对应浏览器的webdriver版本核对一遍,包括路径,均没有问题,但就是出错。以前曾用Selenium和Chrome浏览器做过爬虫,于是又改用Chrome试了试,但结果还是出现一样的错误。

        查了许多资料,始终没有提到如何解决。最后直接搜索错误信息,终于在csdn.net某大神博客上找到了解决办法。python selenium报错ValueError: Timeout value connect was <…>, but it must be an int, float or None._流势的博客-CSDN博客

      文章指出,出现这一问题,是selenium库和urllib3库版本不兼容所致。我最初安装的Selenium版本是3.141.0,Urllib3的版本是2.0.3,这两个版本的库是不兼容的,如果安装的是这两个库,那么在使用selenium时,就会显示上述错误。

 在Pycharm中,选择File—Setting——Project:…——Python Interpreter,点“+”

 输入urllib3,找到后,勾选Specify version指定库的版本为1.26.2,点击Install Package。把urllib3版本降级到1.26.2后,错误全部消失 。

两点心得:

一是编程遇到难以解决的问题时,不妨试着直接查找一下错误信息。这样也许你能直接找到答案,往往比自己去想快的多,比如这次的问题,如果不知道两个包不兼容的话,很自己解决这一问题。

二是发现编程问题解决办法后,应该在博客上做好记录,这样不仅便于自己总结和查找,而且不一定什么时候就能帮助别人解决问题,节省其它网友的大量时间。

物联沃分享整理
物联沃-IOTWORD物联网 » Python中使用Selenium遇到ValueError: Timeout value connect错误解决方法

2 评论

  1. 谢谢,遇到同样的问题,按照博主步骤弄好了,这样的教程对于小白来说太贴心了

  2. 更新urllib3==1.26.2解决

发表评论