目标网站:古诗文网

目标网址:http://so.gushiwen.org/user/collect.aspx

任务要求:

(1)通过selenium的方式模拟该网站的登录,并成功输入用户名和密码;

(2)保存验证码图片,并使用输入式验证码识别的方式识别验证码的文字,获取后输入到输入框中,

(3)验证登录是否成功。

由于OCR库识别成功率较低,这里我门借助超级鹰打码平台(自选平台也可)。
超级鹰平台地址:http://www.chaojiying.com/
ps:注册账号,关注微信号送1000题分

连接超级鹰的代码,详情获取请看我的另一篇博客python验证码识别如何连接第三方平台-------超级鹰

import requests
from hashlib import md5class Chaojiying_Client(object):def __init__(self, username, password, soft_id):self.username = username# todo:更改点一self.password = md5(password.encode("utf-8")).hexdigest()self.soft_id = soft_idself.base_params = {'user': self.username,'pass2': self.password,'softid': self.soft_id,}self.headers = {'Connection': 'Keep-Alive','User-Agent': 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)',}def PostPic(self, im, codetype):"""im: 图片字节codetype: 题目类型 参考 http://www.chaojiying.com/price.html"""params = {'codetype': codetype,}params.update(self.base_params)files = {'userfile': ('ccc.jpg', im)}r = requests.post('http://upload.chaojiying.net/Upload/Processing.php', data=params, files=files, headers=self.headers)return r.json()def ReportError(self, im_id):"""im_id:报错题目的图片ID"""params = {'id': im_id,}params.update(self.base_params)r = requests.post('http://upload.chaojiying.net/Upload/ReportError.php', data=params, headers=self.headers)return r.json()

古诗文网登录代码如下:
PS:运行此代码时,应将电脑分辨率调为100%,否则会导致截取的验证码图片有偏差。

from selenium import webdriver
import timebase_url = 'http://so.gushiwen.org/user/collect.aspx'
browser = webdriver.Chrome()
browser.maximize_window()
browser.implicitly_wait(10)
browser.get(base_url)# 登录页面截图
browser.save_screenshot("D:/pic.png")# 获取图片验证码坐标
code_ele = browser.find_element_by_css_selector('#imgCode')
print("验证码的坐标为:", code_ele.location)
print("验证码的大小为:", code_ele.size)# 图片4个点的坐标位置
x = code_ele.location['x']
y = code_ele.location['y']
right = code_ele.size['width']+x
down = code_ele.size['height']+y
image = Image.open('D:/pic.png')# 截取验证码图片
code_image = image.crop((x,y,right,down))
code_image.save('D:/pic1.png')# 登录超级												

python爬虫之古诗文网中验证码的识别并登录----第三方平台相关推荐

  1. python项目之古诗文网

    目录 一.学习资源 二.分析 1.先找登录口,也就是什么情况下允许登录. 2.打开网页源码找参数 3.获取图片验证码 4.登录 (有坑) 5.成功登录 三.项目源码 一.学习资源 尚硅谷Python爬 ...

  2. python爬虫爬取慕课网中的图片

    我们简单地爬取慕课网中免费课程下的第一页的图片,如想爬取多页图片,可以添加for循环自行实现 python版本:3.6.5 爬取网址:http://www.imooc.com/course/list ...

  3. 第一个简单Python爬虫:抓取古诗文网中李白的诗歌

    2018年10月11日  这是第一个博客,嘻嘻~~~~ 最近老师给了个任务:爬取诗歌.于是乎,走上了爬虫道路,爬取了李白的诗歌. 感谢代码的原作者(唐诗三百首,源代码). 遇到的问题与收获: 1.熟悉 ...

  4. selenium 模拟登陆 古诗文网 含验证码

    ocr.py / 阿里云市场 import base64 import json import urllib.request from urllib import parse import ssl s ...

  5. 爬虫_古诗文网(正则表达式)

    程序中请求到的和网页中内容不一样,但也是古诗,不是道是不是因为请求头的原因,使得网站推荐的古诗有差异 1 import requests 2 import re 3 4 headers = 'Mozi ...

  6. python爬虫 爬取贝壳网中所有行政区内的二手房 将获取信息存于excle中--Excel文件 含分析

    -- coding: utf-8 -- """ Created on Sat Feb 29 19:13:37 2020 @author: acliu "&quo ...

  7. python爬虫-古诗文网验证码识别

    文章目录 一.前期准备 二.示例代码 一.前期准备 古诗文网验证码识别,是通过对古诗文网登陆界面的验证码图片进行识别的,利用专门的验证码识别网站,可以提取验证码图片中的验证码 网站推荐:超级鹰 注册登 ...

  8. Python使用网络抓包的方式,利用超级鹰平台识别验证码登录爬取古诗文网、上篇--识别验证码

    Python使用网络抓包的方式,利用超级鹰平台识别验证码登录,<爬取古诗文网>. 上篇–识别验证码 序言: 哈喽,各位小可爱们,我又来了,这次我新学习到的内容是python爬虫识别验证码. ...

  9. 用机器学习sklearn+opencv-python过古诗文网4位数字+字母混合验证码

    目录 获取验证码图片 用opencv-python处理图片 制作训练数据集 训练模型 识别验证码 编写古诗文网的登录爬虫代码 总结与提高 源码下载 在本节我们将使用sklearn和opencv-pyt ...

最新文章

  1. 放弃安卓原生TimePicker,选择wheelView打造更漂亮的时间get,以及动态拉伸输入框布局,这些,这里都有!...
  2. 如何学习Python数据爬虫?
  3. C#中将表示颜色的string转换成Color
  4. 【Task】- JVM逃逸分析等待学习任务
  5. html from嵌套from
  6. Hive JOIN使用详解
  7. pip代理解决pip下载失败问题
  8. 【Flink】Flink Serving 天池快速上手 【视频笔记】
  9. 贪婪洞窟2服务器维护,12月19日贪婪洞窟2停服维护公告 贪婪洞窟2更新了什么
  10. 力荐50个最实用的免费机器学习数据集
  11. C# 、.NET、ASP.NET MVC积累
  12. Computer Network Note
  13. 「 神器 」强大的系统清理工具
  14. 那些你该知道的CSS颜色代码大全都在这里了,点击查阅
  15. MySql实验嵌套查询_MySQL数据库实验四:嵌套查询
  16. css 有关边框的属性_边框样式(CSS属性)
  17. python切割图片地图切图脚本
  18. [深度分析]我对区块链的认识--概述(一)
  19. 关于Android app 国际化 中英文翻译的细节处理
  20. mysql一次count多个字段_SQL一次查出多个字段的COUNT值

热门文章

  1. wcat 进行iis 压力测试
  2. 猜数字游戏实现(详解)
  3. 专题一matlab基础知识
  4. 最常用的国外杀毒软件
  5. javaWeb(购物车项目)
  6. 操作系统实验1——系统启动过程
  7. 【Win版 PR 2020【必须win10】】
  8. 文件基础处理命令(Linux新手必学)
  9. 视频教程-2020年软考信息安全工程师_基础知识精讲软考视频培训课程-软考
  10. VMware提示此主机支持Intel VT-x,但Intel VT-x处于禁用状态——解决方法