详解python 爬取12306验证码

作者:daqinjun 时间:2022-07-17 20:38:20 

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

本文介绍了在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验证码详解整合网站的支持!

来源:https://blog.csdn.net/daqinjun/article/details/72600235

标签:python,12306,验证码
0
投稿

猜你喜欢

  • Js nodeType 属性全面解析

    2024-04-16 09:53:30
  • String.indexOf 方法介绍

    2013-06-01 20:22:27
  • 使用 Python 实现微信群友统计器的思路详解

    2022-02-04 23:38:08
  • asp函数InstrRev()介绍及获取文件名例子

    2007-11-19 19:01:00
  • asp如何用组件实现自动发送电子邮件?

    2010-06-16 09:56:00
  • 阿里开源低代码引擎和生态建设实战及思考

    2023-03-30 05:46:43
  • python3实现ftp服务功能(服务端 For Linux)

    2022-05-18 06:05:03
  • Python爬虫实战之爬取携程评论

    2022-02-03 14:26:23
  • 使用Python实现跳一跳自动跳跃功能

    2023-04-07 01:57:55
  • python pyinstaller打包exe报错的解决方法

    2022-05-11 20:39:40
  • JavaScript实现弹出DIV层同时页面背景渐变成半透明效果

    2024-04-30 10:09:27
  • 微信小程序实现留言板(Storage)

    2024-04-16 09:31:16
  • 浅析is_writable的php实现

    2023-09-09 01:41:05
  • Python3导入CSV文件的实例(跟Python2有些许的不同)

    2023-09-21 05:19:29
  • linux安装mysql和使用c语言操作数据库的方法 c语言连接mysql

    2024-01-12 20:31:03
  • .net 6精简版webapi教程及热重载、代码自动反编译演示

    2024-05-05 09:13:12
  • Yahoo! BrowserPlus 介绍

    2008-06-01 16:38:00
  • 在Python中将函数作为另一个函数的参数传入并调用的方法

    2023-04-10 07:32:26
  • Tensorflow获取张量Tensor的具体维数实例

    2021-12-24 20:25:10
  • Python调用两个机器人聊天的实战

    2021-09-30 23:10:52
  • asp之家 网络编程 m.aspxhome.com