详解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 pickle 和 shelve模块的用法
Sep 16 Python
Python操作sqlite3快速、安全插入数据(防注入)的实例
Apr 26 Python
python搜索指定目录的方法
Apr 29 Python
Python实现把json格式转换成文本或sql文件
Jul 10 Python
详解Python装饰器由浅入深
Dec 09 Python
Python 在字符串中加入变量的实例讲解
May 02 Python
Python切片索引用法示例
May 15 Python
用Python编写一个高效的端口扫描器的方法
Dec 20 Python
Python 用turtle实现用正方形画圆的例子
Nov 21 Python
Django如何使用jwt获取用户信息
Apr 21 Python
Python标准库:内置函数max(iterable, *[, key, default])说明
Apr 25 Python
python switch 实现多分支选择功能
Dec 21 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
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
CI框架学习笔记(二) -入口文件index.php
2014/10/27 PHP
简单概括PHP的字符串中单引号与双引号的区别
2016/05/07 PHP
脚本收藏iframe
2006/07/21 Javascript
javascript中的107个基础知识收集整理 推荐
2010/03/29 Javascript
了解jQuery技巧来提高你的代码(个人觉得那个jquery的手册很不错)
2012/02/10 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
jQuery中outerHeight()方法用法实例
2015/01/19 Javascript
JavaScript插件化开发教程 (四)
2015/01/27 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
js实现PC端根据IP定位当前城市地理位置
2017/02/22 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
详解webpack自定义loader初探
2018/08/29 Javascript
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
uni-app如何页面传参数的几种方法总结
2020/04/28 Javascript
pydev使用wxpython找不到路径的解决方法
2013/02/10 Python
Python Socket传输文件示例
2017/01/16 Python
Python实现简单的HttpServer服务器示例
2017/09/25 Python
Numpy之random函数使用学习
2019/01/29 Python
Pytorch提取模型特征向量保存至csv的例子
2020/01/03 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
python 实现朴素贝叶斯算法的示例
2020/09/30 Python
详解Python中的文件操作
2021/01/14 Python
应届生法律求职信
2013/10/22 职场文书
大学四年学习的自我评价分享
2013/12/09 职场文书
公司市场专员岗位职责
2014/06/29 职场文书
环保志愿者活动方案
2014/08/14 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
支行行长竞聘报告
2014/11/06 职场文书
2015年防汛工作总结
2015/05/15 职场文书
2015年城管执法工作总结
2015/07/23 职场文书
Pytorch中的学习率衰减及其用法详解
2021/06/05 Python
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server
利用Redis实现点赞功能的示例代码
2022/06/28 Redis