学习笔记——12306 手动登录解析(1)

news/2024/11/19 8:20:49/
#-*-coding:utf-8 -*-
import urllib2
import urllib
# 验证码登录同步
import cookielib
import ssl
#证书验证
ssl._create_default_https_context = ssl._create_unverified_context
# 请求验证码图片
c=cookielib.LWPCookieJar()#生成一个储存cookie的对象
cookie=urllib2.HTTPCookieProcessor(c)#绑定
opener=urllib2.build_opener(cookie)
urllib2.install_opener(opener)
# opener绑定,用opener.open请求,自带cookie,实现验证码与登陆同步req=urllib2.Request("https://kyfw.12306.cn/passport/captcha/""captcha-image?login_site=E&module=""login&rand=sjrand&0.3835166812770916")
codeing=opener.open(req).read()#opener
fn=open('code/code.png','wb')
#保存到本地
fn.write(codeing)
fn.close()req=urllib2.Request('https://kyfw.12306.cn/passport''/captcha/captcha-check')
code=raw_input(">>")
data={
"answer":code,
"login_site":"E",
"rand":"sjrand",
}
data=urllib.urlencode(data)#把字典类型转变为查询字符串
html=opener.open(req,data=data).read()
print html#登录
req=urllib2.Request('https://kyfw.12306.cn/passport''/web/login')data={'username':'abcdert','password':'123456','appid':'otn',
}
data=urllib.urlencode(data)
html=opener.open(req,data=data).read()
print html


输入验证码位置,账号密码改为自己的就可以了。

>>258,44
{"result_message":"验证码校验成功","result_code":"4"}
{"result_message":"密码输入错误。如果输错次数超过4次,用户将被锁定。","result_code":1}



http://www.ppmy.cn/news/803714.html

相关文章

python3 requests 实现12306购票登录模块

12306登录模块分析 第一次写文章,记录一下学习的内容。今天先记录登录模块的分析和实现。 在博客上看见一些大佬用的是splinter webdriver写的12306购票过程。 由于我之前学习了一阵子requests库,所以以下使用python3requests实现12306购票。&#xf…

java实现12306查票_GitHub - HendSame/J12306: 12306抢票程序JAVA版

J12306抢票助手 12306抢票程序JAVA版,自动登录-验证-查票-购票/自动候补。只需简单的配置即可运行进行快捷抢票。 使用说明 引入jar依赖 手动添加项目lib文件夹中的依赖包 配置文件config.yml # 请修改相关配置 # 12306账号密码配置(暂时没用到) j12306: user: 182xxxx passwo…

python12306买票_Python爬虫之12306-买票器小白源码

研究不易 import requests import re import urllib.parse import json import datetime from collections import OrderedDict selfrequests.session() self.verifyFalse self.headers{ Accept:text/html,application/xhtmlxml,application/xml;q0.9,image/webp,image/apng,*/…

被12306坑了?聊聊验证码发展

年关将至,也正值春运购票高峰,正所谓“一张车票引无数英雄尽折腰”。近日,铁路部门的官方购票网站12306再次成为网友调侃的对象。不过,这次 调侃的内容不再是抢票难的问题,而换成了12306登陆时的图形验证码。部分网友在…

java版12306抢票_GitHub - a1647517212/J12306: 12306抢票程序JAVA版

J12306抢票助手 12306抢票程序JAVA版,自动登录-验证-查票-购票/自动候补。只需简单的配置即可运行进行快捷抢票。 使用说明 引入jar依赖 手动添加项目lib文件夹中的依赖包 配置文件config.yml # 请修改相关配置 # 12306账号密码配置(暂时没用到) j12306: user: 182xxxx passwo…

包装类的学习

包装类:基本数据类型对应的引用数据类型 对象 本质就是用一个对象把数据 给包起来 包装类 byte Byte short Short char Character int Integer long Long float Float double Double boolean …

【洛谷】P5705 【深基2.例7】数字反转

【深基2.例7】数字反转 题目描述 输入一个不小于 100 100 100 且小于 1000 1000 1000,同时包括小数点后一位的一个浮点数,例如 123.4 123.4 123.4 ,要求把这个数字翻转过来,变成 4.321 4.321 4.321 并输出。 输入格式 一行…

【案例教程】GIS在地质灾害危险性评估与灾后重建中的实践技术应用及python机器学习灾害易发性评价模型建立与优化

地质灾害是指全球地壳自然地质演化过程中,由于地球内动力、外动力或者人为地质动力作用下导致的自然地质和人类的自然灾害突发事件。由于降水、地震等自然作用下,地质灾害在世界范围内频繁发生。我国除滑坡灾害外,还包括崩塌、泥石流、地面沉…