详解python 爬取12306验证码


Posted in Python onMay 10, 2019

一个简单的验证码爬取程序

本文介绍了在Python2.7环境下爬取网站验证码:

思路就是获取验证码对应的url,然后发起requst请求,读取该URL对应的内容,然后写入到一个本地文件,实现一个验证码的保存。大量下载可以把以上程序写入一个死循环

代码实现部分:

import ssl
import urllib2
i=1
import time
while(1):

 #不加的话,无法访问12306 
  ssl._create_default_https_context = ssl._create_unverified_context
  # headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36"}
  # req = urllib2.Request("http://211.87.155.19/(yfsvlfreem4d0b553vkfzfzt)/CheckCode.aspx", headers=headers)
  # https: // www.zhihu.com / captcha.gif?r = 1495351271125 & type = login
  req = urllib2.Request("https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module=login&rand=sjrand&0.7174227166135074")
  u=urllib2.urlopen(req)
  data = u.read()
  f = open("C:/Users/123/Desktop/4/"+str(i)+".jpg",'wb')
  print i
  # time.sleep(1)#有时需要加延时,以防被封。
  i=i+1
  f.write(data)
  f.close()

以下就是爬取的照片的截图

详解python 爬取12306验证码

12306的验证码经常让人眼花缭乱,眼睛仔细看也不能100%的对,算是验证码中比较难是别的。一般由八幅图和一个问题组成,而且图片大小位置固定,问题的位置也是固定的,这也稍微降低了识别的难度。八幅图中一般有两幅图是同一物体,有一个和它比较像。不过有一点暂时没法确定,就是样本库到底有多大,或者说是到底有多少个类别,如果进行训练的话,我们必须获取每个类别个的一定数量的图片作为样本。

以上所述是小编给大家介绍的python爬取12306验证码详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python登陆asp网站页面的实现代码
Jan 14 Python
朴素贝叶斯分类算法原理与Python实现与使用方法案例
Jun 26 Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
Jan 05 Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 Python
django admin 自定义替换change页面模板的方法
Aug 23 Python
python实现H2O中的随机森林算法介绍及其项目实战
Aug 29 Python
Docker部署Python爬虫项目的方法步骤
Jan 19 Python
Django项目uwsgi+Nginx保姆级部署教程实现
Apr 19 Python
Python random模块的使用示例
Oct 10 Python
python实现网页录音效果
Oct 26 Python
如何在windows下安装配置python工具Ulipad
Oct 27 Python
Django实现翻页的示例代码
May 24 Python
详解用python写一个抽奖程序
May 10 #Python
python实现小球弹跳效果
May 10 #Python
基于python实现百度翻译功能
May 09 #Python
python使用time、datetime返回工作日列表实例代码
May 09 #Python
python 对字典按照value进行排序的方法
May 09 #Python
使用Django开发简单接口实现文章增删改查
May 09 #Python
python GUI实现小球满屏乱跑效果
May 09 #Python
You might like
避免Smarty与CSS语法冲突的方法
2015/03/02 PHP
WordPress中用于获取文章信息以及分类链接的函数用法
2015/12/18 PHP
简单谈谈PHP中的Reload操作
2016/12/12 PHP
jquery ui dialog ie8出现滚动条的解决方法
2010/12/06 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
jQuery EasyUI菜单与按钮详解
2016/07/13 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
javascript中apply/call和bind的使用
2017/02/15 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
boostrap模态框二次弹出清空原有内容的方法
2018/08/10 Javascript
微信小程序扫描二维码获取信息实例详解
2019/05/07 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
2019/10/14 Javascript
[55:54]FNATIC vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python获取文件路径、文件名、后缀名的实例
2018/04/23 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
Django的models中on_delete参数详解
2019/07/16 Python
Pytorch 实现自定义参数层的例子
2019/08/17 Python
python字符串,元组,列表,字典互转代码实例详解
2020/02/14 Python
Python中的sys.stdout.write实现打印刷新功能
2020/02/21 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
2020/08/18 Python
Python析构函数__del__定义原理解析
2020/11/20 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
详解CSS3中@media的实际使用
2015/08/04 HTML / CSS
Lenox官网:精美的瓷器&独特的礼品
2017/02/12 全球购物
3个CCIE对一个工程师的面试题
2012/05/06 面试题
师范生实习的个人自我鉴定
2013/10/20 职场文书
婚礼司仪主持词
2014/03/14 职场文书
银行行长竞聘演讲稿
2014/04/23 职场文书
品质口号大全
2014/06/17 职场文书
委托书怎么写
2014/07/31 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
2016年国陪研修感言
2015/11/18 职场文书
PO模式在selenium自动化测试框架的优势
2022/03/20 Python