详解python 爬取12306验证码
一个简单的验证码爬取程序
本文介绍了在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()
以下就是爬取的照片的截图
12306的验证码经常让人眼花缭乱,眼睛仔细看也不能100%的对,算是验证码中比较难是别的。一般由八幅图和一个问题组成,而且图片大小位置固定,问题的位置也是固定的,这也稍微降低了识别的难度。八幅图中一般有两幅图是同一物体,有一个和它比较像。不过有一点暂时没法确定,就是样本库到底有多大,或者说是到底有多少个类别,如果进行训练的话,我们必须获取每个类别个的一定数量的图片作为样本。
以上所述是小编给大家介绍的python爬取12306验证码详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
使用Python神器对付12306变态验证码
临近春节,我们小编带领大家用Python抢火车票! 首先我们需要splinter 安装: pip install splinter -i http://pypi.douban.com/simple –trusted-host pypi.douban.com 然后还需要一个浏览器的驱动,当然用chrome啦 下载地址: http://chromedriver.storage.googleapis.com/index.html?path=2.20/ 根据下载的自己的电脑系统选择下载包,我的windo
-
python自动登录12306并自动点击验证码完成登录的实现源代码
以下代码可自动登录12306 - 包括输入用户名密码以及自动识别验证码并点击验证码登陆.该源码需要稍作修改: 把 username.send_keys('xxxxxxx') 中的 xxxxxx 改为 你自己的12306账号. 把 password.send_keys('yyyyyy') 中的 yyyyy 改为自己的 12306 密码. 即可运行. 该源码把自动抢票的核心功能:识别验证码并点击验证码登陆实现了. 把代码稍作加工,即可变为自己的自动抢票代码. 运行环境 - 需要安装p
-
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
测试结果: 整个买票流程可以再快一点,不过为了稳定起见,有些地方等待了一些时间 完整程序,拿去可用 整个程序分了三个模块:购票模块(主体).验证码识别模块.余票查询模块 购票模块: from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC from selenium.commo
-
Python实现破解12306图片验证码的方法分析
本文实例讲述了Python实现破解12306图片验证码的方法.分享给大家供大家参考,具体如下: 不知从何时起,12306的登录验证码竟然变成了按字找图,可以说是又提高了一个等次,竟然把图像识别都用上了.不过有些图片,不得不说有些变态,图片的清晰图就更别说了,明显是从网络上的图库中搬过来的. 谁知没多久,网络就惊现破解12306图片验证码的Python代码了,作为一个爱玩爱刺激的网虫,当然要分享一份过来. 代码大致流程: 1.将验证码图片下载下来,然后切图: 2.利用百度识图进行图片分析: 3.再
-
详解python 爬取12306验证码
一个简单的验证码爬取程序 本文介绍了在Python2.7环境下爬取网站验证码: 思路就是获取验证码对应的url,然后发起requst请求,读取该URL对应的内容,然后写入到一个本地文件,实现一个验证码的保存.大量下载可以把以上程序写入一个死循环 代码实现部分: import ssl import urllib2 i=1 import time while(1): #不加的话,无法访问12306 ssl._create_default_https_context = ssl._create_unv
-
详解python爬取弹幕与数据分析
很不幸的是,由于疫情的关系,原本线下的AWD改成线上CTF了.这就很难受了,毕竟AWD还是要比CTF难一些的,与人斗现在变成了与主办方斗. 虽然无奈归无奈,但是现在还是得打起精神去面对下一场比赛.这个开始也是线下的,决赛地点在南京,后来是由于疫情的关系也成了线上. 当然,比赛内容还是一如既往的得现学,内容是关于大数据的. 由于我们学校之前并没有开设过相关培训,所以也只能自己琢磨了. 好了,废话先不多说了,正文开始. 一.比赛介绍 大数据总体来说分为三个过程. 第一个过程是搭建hadoop环境.
-
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
今年五一放了四天假,很多人不再只是选择周边游,因为时间充裕,选择了稍微远一点的景区,甚至出国游.各个景点成了人山人海,拥挤的人群,甚至去卫生间都要排队半天,那一刻我突然有点理解灭霸的行为了. 今天通过分析去哪儿网部分城市门票售卖情况,简单的分析一下哪些景点比较受欢迎,等下次假期可以做个参考. 抓取数据 通过请求https://piao.qunar.com/ticket/list.htm?keyword=北京,获取北京地区热门景区信息,再通过BeautifulSoup去分析提取出我们需要的信息.
-
详解Python爬取并下载《电影天堂》3千多部电影
不知不觉,玩爬虫玩了一个多月了. 我愈发觉得,爬虫其实并不是什么特别高深的技术,它的价值不在于你使用了什么特别牛的框架,用了多么了不起的技术,它不需要.它只是以一种自动化搜集数据的小工具,能够获取到想要的数据,就是它最大的价值. 我的爬虫课老师也常跟我们强调,学习爬虫最重要的,不是学习里面的技术,因为前端技术在不断的发展,爬虫的技术便会随着改变.学习爬虫最重要的是,学习它的原理,万变不离其宗. 爬虫说白了是为了解决需要,方便生活的.如果能够在日常生活中,想到并应用爬虫去解决实际的问题,那么爬虫的
-
Python爬取12306车次信息代码详解
详情查看下面的代码: 如果被识别就要添加一个cookie如果没有被识别的话就要一个user-agent就好了.如果出现乱码就设置编码格式为utf-8 #静态的数据一般在elements中(复制文字到sources按ctrl+f搜索.找到的为静态),而动态去network中去寻找相关的信息 import requests import re def send_request(): headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win6
-
详解Python静态网页爬取获取高清壁纸
前言 在设计爬虫项目的时候,首先要在脑内明确人工浏览页面获得图片时的步骤 一般地,我们去网上批量打开壁纸的时候一般操作如下: 1.打开壁纸网页 2.单击壁纸图(打开指定壁纸的页面) 3.选择分辨率(我们要下载高清的图) 4.保存图片 实际操作时,我们实现了如下几步网页地址的访问:打开了壁纸的网页→单击壁纸图打开指定页面→选择分辨率,点击后打开最终保存目标图片网页→保存图片 在爬虫的过程中我们就尝试通过模拟浏览器打开网页的操作,一步步获得.访问网页.最后获得目标图片的下载地址,对图片进行下载保存到
-
python爬取天气数据的实例详解
就在前几天还是二十多度的舒适温度,今天一下子就变成了个位数,小编已经感受到冬天寒风的无情了.之前对获取天气都是数据上的搜集,做成了一个数据表后,对温度变化的感知并不直观.那么,我们能不能用python中的方法做一个天气数据分析的图形,帮助我们更直接的看出天气变化呢? 使用pygal绘图,使用该模块前需先安装pip install pygal,然后导入import pygal bar = pygal.Line() # 创建折线图 bar.add('最低气温', lows) #添加两线的数据序列 b
-
详解python定时简单爬取网页新闻存入数据库并发送邮件
本人小白一枚,简单记录下学校作业项目,代码十分简单,主要是对各个库的理解,希望能给别的初学者一点启发. 一.项目要求 1.程序可以从北京工业大学首页上爬取新闻内容:http://www.bjut.edu.cn 2.程序可以将爬取下来的数据写入本地MySQL数据库中. 3.程序可以将爬取下来的数据发送到邮箱. 4.程序可以定时执行. 二.项目分析 1.爬虫部分利用requests库爬取html文本,再利用bs4中的BeaultifulSoup库来解析html文本,提取需要的内容. 2.使用pymy
-
详解Python爬虫爬取博客园问题列表所有的问题
一.准备工作 首先,本文使用的技术为 python+requests+bs4,没有了解过可以先去了解一下. 我们的需求是将博客园问题列表中的所有问题的题目爬取下来. 二.分析: 首先博客园问题列表页面右键点击检查 通过Element查找问题所对应的属性或标签 可以发现在div class ="one_entity"中存在页面中分别对应每一个问题 接着div class ="news_item"中h2标签下是我们想要拿到的数据 三.代码实现 首先导入requests和
-
详解使用python爬取抖音app视频(appium可以操控手机)
记录一下如何用python爬取app数据,本文以爬取抖音视频app为例. 编程工具:pycharm app抓包工具:mitmproxy app自动化工具:appium 运行环境:windows10 思路: 假设已经配置好我们所需要的工具 1.使用mitmproxy对手机app抓包获取我们想要的内容 2.利用appium自动化测试工具,驱动app模拟人的动作(滑动.点击等) 3.将1和2相结合达到自动化爬虫的效果 一.mitmproxy/mitmdump抓包 确保已经安装好了mitmproxy,并
随机推荐
- perl 基本语法介绍
- asp textbox获取显示mysql数据示例代码
- VBScript 剪贴板抓取URL并在浏览器中打开
- 浅谈java里的EL表达式在JSP中不能解析的问题
- Oracle与Mysql主键、索引及分页的区别小结
- 用js实现的一个根据内容自动生成表格的函数
- 异步加载JS、CSS代码(推荐)
- 学习JavaScript设计模式(封装)
- ASP + Serv-u 实现FTP的代码
- 详解docker pull 下来的镜像文件存放的位置
- 利用JS实现简单的日期选择插件
- ActiveX漏洞通用Exploit vbs修正版
- iscroll-probe实现下拉刷新和下拉加载效果
- JavaScript 中调用 Kotlin 方法实例详解
- Python中使用ElementTree解析XML示例
- 探讨Java中函数是值传递还是引用传递问题
- ie focus bug 解决方法
- 技术入股创业一年,家庭收入变成负5万
- Java8中Optional的一些常见错误用法总结
- 微信小程序tab切换可滑动切换导航栏跟随滚动实现代码