12306登录爬虫 cookies版本
import requests
import re
import base64
cookies = None
# 进入主页,保留cookies
login_url = 'https://kyfw.12306.cn/otn/resources/login.html'
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3664.3 Safari/537.36'
}
data = { }
res = requests.get(login_url,headers = headers)
cookies = res.cookies
# print(res.cookies)
#验证码图片下载
pic_url = 'https://kyfw.12306.cn/passport/captcha/captcha-image64?login_site=E&module=login&rand=sjrand&1547541563360&callback=jQuery191024188047659526446_1547541316425&_=1547541316427'
res_pic = requests.get(pic_url,headers = headers,cookies = cookies)
cookies = res_pic.cookies
pic_data = re.findall(b'image":"(.*?)"',res_pic.content)[0]
# print(res_pic.content)
# print(pic_data)
pic_64d = base64.b64decode(pic_data)
# print(pic_64d)
with open('img/YanZheng.jpg','wb') as f:
f.write(pic_64d)
# 验证图片
def turn():
a = input('请输入:')
numli = a.split(',')
result = []
for i in numli:
i = int(i)
if i == 1:
result.append('42,45')
if i == 2:
result.append('120,45')
if i == 3:
result.append('198,45')
if i == 4:
result.append('262,45')
if i == 5:
result.append('42,102')
if i == 6:
result.append('118,102')
if i == 7:
result.append('177,102')
if i == 8:
result.append('262,102')
result = ','.join(result)
return result data2 = {
'callback':'jQuery191046501253654005814_1547541829587',
'answer':turn(),
'rand':'sjrand',
'login_site':'E',
'_':''
}
# print(data2)
Yan_url = 'https://kyfw.12306.cn/passport/captcha/captcha-check'
res_Yan = requests.get(Yan_url,params = data2,headers = headers,cookies = cookies)
print(res_Yan.url)
res_Yan.encoding = 'utf-8'
print(res_Yan.text)
12306登录爬虫 cookies版本的更多相关文章
- 12306登录爬虫 session版本
import requests import re import base64 # 定义session headers = { 'User-Agent':'Mozilla/5.0 (Windows N ...
- python爬虫--模拟12306登录
模拟12306登录 超级鹰: #!/usr/bin/env python # coding:utf-8 import requests from hashlib import md5 class Ch ...
- httpwebrequest 模拟登录 获取cookies 以前的代码,记录备忘!
2个类,一个基类,一个构建头信息调用类 关于如何获取到post中的内容,你之需要用http抓包工具把你与目标网站的请求信息抓下来后,打开分析下按照抓下来的包中的数 据进行构建就行了 using Sys ...
- python接口自动化测试七:获取登录的Cookies,并关联到下一个请求
获取登录的cookies:loginCookies = r.cookies 把获取到的cookies传入请求:cookies=loginCookies 此方法需每一次都调用登录方法,并且每一次发送请求 ...
- python接口自动化测试七:获取登录的Cookies
python接口自动化测试七:获取登录的Cookies,并关联到下一个请求 获取登录的cookies:loginCookies = r.cookies 把获取到的cookies传入请求:cooki ...
- H3C 交换机设置本地用户和telnet远程登录配置 v7 版本
H3C 交换机设置本地用户和telnet远程登录配置 v7版本 一.配置远程用户密码与本地用户一致 [H3C]telnet server en //开启Telnet 服务 [H3C]local-u ...
- 终极利器!利用appium和mitmproxy登录获取cookies
环境搭建 参考我之前写的https://www.cnblogs.com/c-x-a/p/9163221.html appium 代码start_appium.py # -*- coding: utf- ...
- 利用Jsoup模拟跳过登录爬虫获取数据
今天在学习爬虫的时候想着学习一下利用jsoup模拟登录.下面分为有验证码和无验证码的情况进行讨论. ---------------------------无验证码的情况---------------- ...
- 爬虫cookies详解
cookies简介 cookie是什么? Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).定义于 ...
随机推荐
- Confluence 6 MBeans
你可以使用下面的 Confluence MBeans 来实时查看你 Confluence 实例运行的实时信息. CacheStatistics 这个 MBean 显示了 Confluence 有关的 ...
- Confluence 6 导入模板的定义
模板是一个预先定义的页面,这个预先定义的页面可以在创建新页面的时候预先载入.模板能够给一个页面统一的样式或格式. 你可以在 Confluence 中创建你自己的模板,请查看页面 Create a Te ...
- android中调用c++文件并转为so
1.新建项目,不选include support c++ 报错:Error:Failed to open zip file.Gradle's dependency cache may be corru ...
- iis配置问题
最近调试程序时发现一直用的是vs自带的服务器 当我切换成iis时,发现虽然能显示界面,却连不上数据库 (程序数据库的一系列操作是通过wcf ria完成的) 以前在winserver2012上也遇到过这 ...
- django模板导入外部js和css等文件
1.新建文件夹templates(存放模板文件),新建文件夹media(存放js.css.images文件夹),并把两个文件夹放到了项目的根目录下 2.设定模板路径 设置模板路径比较简单,只要在set ...
- SpringBoot集成前端模版(thymeleaf)
1.在application.properties配置文件中添加 thymeleaf 的配置信息 spring.datasource.driverClassName=com.mysql.jdbc.Dr ...
- cf441 f组合数。。单调指针
e没学过做不出来.. 处理合法的区间很麻烦,但是处理非合法的区间很容易 答案就是所有的取法-不合法的区间 这题一定要双边界推进处理!!!! 一开始用单边界向右推进,结果后来发现错了,拿样例1就可以证明 ...
- 第一周学习总结-Java
2018年7月15日 暑假第一周,我从网上找了一些讲Java的视频,学到了一些Java的基础,同时也弥补了一些之前学c/c++的知识漏洞.例如,了解到了原码反码补码和按位取反运算符(~)的运算原理. ...
- 跨域 XMLHttpRequest对象
XMLHttpRequest对象是ajax编程的基础,用于发送请求(数据)与服务端进行交互. 目前主流浏览器都内置了XMLHttpRequest对象. 浏览器会使用XMLHttpRequest对象来创 ...
- 史上最简单的SpringCloud教程 | 第九篇: 服务链路追踪(Spring Cloud Sleuth)
这篇文章主要讲述服务追踪组件zipkin,Spring Cloud Sleuth集成了zipkin组件. 注意情况: 该案例使用的spring-boot版本1.5.x,没使用2.0.x, 另外本文图3 ...