当前位置: 首页 > news >正文

数据采集之超级鹰验证码识别及模拟登录

                                         使用超级鹰完成验证码识别及模拟登录

本博文爬取实例古诗文网,若网址发生变化,只需要修改对应代码网址即可

from lxml import etree
import requests
from chaojiying import Chaojiying_Client
headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36"
}
session=requests.session()
# 1.查找验证码所在的位置,为下载图片做准备
url="https://so.gushiwen.cn/user/login.aspx"
resp=session.get(url,headers=headers)
html=etree.HTML(resp.text)
viewstate=html.xpath("//input[@id='__VIEWSTATE']/@value")[0]
viewstategenerator=html.xpath("//input[@id='__VIEWSTATEGENERATOR']/@value")[0]
baseurl="https://so.gushiwen.cn"
codeurl=baseurl+html.xpath("//img[@id='imgCode']/@src")[0]
# 2.下载图片
resp1=session.get(codeurl,headers=headers)
with open("code.png","wb") as fp:fp.write(resp1.content)
# 3.超级鹰识别
chao=Chaojiying_Client(username="sdutlss",password="sdutlss",soft_id=933175)
# 4.打开图片,识别
img=open("code.png","rb").read()
chaodict=chao.PostPic(img,1902)
textcode=chaodict["pic_str"]
print(textcode)

http://www.mrgr.cn/news/66429.html

相关文章:

  • 优化文本嵌入,大幅提升RAG检索速度
  • 【protobuf(1)】首次理解与实践
  • nginx cors配置
  • SpringBoot驱动:构建高效作业管理系统
  • MySQL数据库之存储过程的创建与应用
  • C#、C和C++的主要区别
  • Go 中的 Context实现原理以及正确使用方式
  • 小白直接冲!BiTCN-BiLSTM-Attention双向时间卷积双向长短期记忆神经网络融合注意力机制多变量回归预测
  • vite+vue项目创建流程;npm error enoent Could not read package.json异常报错问题
  • 鸿蒙移动应用开发-------初始arkts
  • leetcode动态规划(二十九)-最大子数组和
  • 【JavaSE】(2) 方法
  • 基于Leaflet的自助标绘源码解析-其它对象解析
  • 有线电视 1.27.5 | 完全免费的电视直播应用,频道丰富,画质清晰
  • File和InputStream,OutputStream
  • 什么时候出现线程安全,如何实现线程安全?
  • 如何显示弹出式窗口
  • Spark的容错机制
  • WCY的比赛题解
  • java学习3---面向对象
  • 19. 架构重要需求
  • 1105--面试代码题
  • HttpClientUtils
  • 了解数据库并发产生的问题
  • 大数据新视界 -- 大数据大厂之 Impala 与内存管理:如何避免资源瓶颈(上)(5/30)
  • Java开发中的分布式锁使用教程