← 返回文章列表

深度解析:python 破解验证码点选走过的坑

一、配置环境1.想要使用selenium,必须先安装.可以在pycharm中,file--->settings--->projectinterpreter--->然后点击面板中的加号,搜索selenium即可,也可以在终端中通过pip3in

一、配置环境

1.想要使用selenium,必须先安装.

可以在pycharm中,file--->settings--->project interpreter--->然后点击面板中的加号,搜索selenium即可,

也可以在终端中通过pip3 install selenium

安装完成之后可以通过from selenium import webdriver试一下,是否报错,如果不报错证明安装没有问题.

2.安装浏览器驱动

selenium安装完成之后,还需要安装浏览器驱动,这里我只说一下安装google的webdriver

下载地址:

http://chromedriver.storage.googleapis.com/index.html

下载时候一定要注意,下载这个驱动的版本是和你自身安装的谷歌浏览器版本有关系的,如果你的驱动版本很高,而浏览器版本低,那就会出现在程序中写了代码之后,可以将谷歌浏览器打开,但是并不能打开你在程序中指定的url地址,这就是我之前遇到的问题,就是由于两个版本不适应的原因.

打开这个网址之后,点开一个版本,点开notes.text,在这个文件中可以看到

---------ChromeDriver

100.0.4896.60

(2022-03-30)--------- Supports Chrome version 100 Resolved issue 4002: Support Fenced Frames [Pri-]

上面是chromedriver的版本,下面是对应的谷歌浏览器的版本,这个一定要对应上.

3.下载完成之后

下载完成之后,解压,然后将这个chromedriver.exe放到google浏览器安装的目录,然后还需要配置环境变量,

控制面板--->系统和安全--->系统--->高级系统设置--->环境变量--->找到path--->点击编辑--->然后将刚chromedriver路径填上,点解保存就可以了

环境变量配完之后,如果每一步都正常的话,就应该没什么问题了,此时可以在程序中写上如下代码,调试一下,如果google可以正常启动,并且打开了百度,那就没问题了

from selenium import webdriver

browser = webdriver.Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")

browser.get("http://www.baidu.com")

print(browser.page_source)

二、调试中遇到的坑

1、环境配置不正确

a、电脑上安装的浏览器版本和驱动的版本不一致,导致不能正确打开浏览器,程序报错。

查看自己的谷歌浏览器版本号:

根据我电脑的浏览器版本,我选择下载这个版本的浏览器驱动

下载后解压,直接拷贝到浏览器的路径中去(点击浏览器快捷图标,点开打开文件位置,把文件拷贝进去)

b、环境变量配置不正确,path修改一般在全局变量中修改,直接点击编辑

直接点击浏览器快捷方式图标,点击右键,选择属性

直接复制

目标框

里面的数据,粘贴到变量值中。

重点来了:一定记得把里面的

chrome.exe

修改成

chromedriver

(就是刚下载下来,放在这个目录里面的文件)

走完这一步,调试python程序,就能顺利的用程序把浏览器打开了。

二、程序打开后,selenium程序在改版,输入命令的时候,有删除线提示:

还是可以运行,(注意这是老命令,括号里面是复制的XPATH路径)虽然运行成功了,但是依然报错。

这是selenium在进行命令版本的切换。

坑来了:按照提示信息,把命令改成了。

结果报错:

居然报错:找不到By!!!

结果,这个By是需要导库的

添加这行命令后,程序成功运行!!!