大家好,我是皮皮。
一、前言
前几天在Python钻石交流群【静惜】问了一个Python实现识别验证码并自动登录的问题,提问截图如下:
验证码的截图如下所示:
二、实现过程
这里大家激烈的探讨,【海南菜同学】、【狂徒张三】提出打码平台。
后来【Python进阶者】给了一个代码,如下所示:
# coding:utf-8
from selenium.webdriver import Chrome
from chaojiying import Chaojiying_Client
import time
web = Chrome()
web.get("https://so.gushiwen.cn/user/login.aspx")
time.sleep(2)
# 处理验证码
img = web.find_element_by_xpath('//*[@id="imgCode"]').screenshot_as_png
chaojiying = Chaojiying_Client('dcpeng', '666', '666')
print(chaojiying.PostPic(img, 1902)) # 得到的是一个字典的返回结果
dic = chaojiying.PostPic(img, 1902)
verify_code = dic["pic_str"]
# # 向页面中填入用户名,密码验证码
web.find_element_by_xpath('//*[@id="email"]').send_keys("Python进阶者@163.com")
web.find_element_by_xpath('//*[@id="pwd"]').send_keys("Python进阶者")
web.find_element_by_xpath('//*[@id="code"]').send_keys(verify_code)
time.sleep(1)
#
# # 点击登录
web.find_element_by_xpath('//*[@id="denglu"]').click()
需要替换你自己的超级鹰账号,还有你自己的账号密码,这样的话,就不会出现那个问题了。
登录后的界面:
顺利地解决了粉丝的问题!
三、总结
大家好,我是皮皮。这篇文章主要盘点了一个Python网络爬虫过程中网页验证码绕过的问题,文中针对该问题,并给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。
最后感谢粉丝【静惜】提问,感谢【dcpeng】、【Jason】、【海南菜同学】、【狂徒张三】给出的思路和代码解析,感谢【甯同学】等人参与学习交流。
标签:xpath,web,登录,Python,验证码,id,盘点,find From: https://www.cnblogs.com/dcpeng/p/16830756.html