requests库的get请求,带有cookies
(一)如何带cookies请求
方法一:headers中带cookies
#coding:utf-8
import requests
import re # 构建url
url = 'http://www.renren.com/923768535' # 构建请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.89 Safari/537.36',
'Cookie': 'anonymid=j6c96snx6i82ml; _r01_=1; _ga=GA1.2.1361939841.1504226199; depovince=GUZ; JSESSIONID=abcjqMbx6AsKFexLLwC_v; jebe_key=2b511d4c-0b0e-4e77-bcbd-28616d344a3d%7Ceda913e449d4d8cd6ac80727da63a1fe%7C1510156700139%7C1%7C1510156700366; ch_id=10016; jebecookies=5dddc92f-140c-41ef-be32-c6e023d9a0f2|||||; ick_login=28789547-d18b-4142-af78-35fb306907a3; _de=4F1FF60C280AA48B2CD1201DB4C6DF4A; p=1d40e67e3bf905bdc36671554ad798895; first_login_flag=1; ln_uact=17173805860; ln_hurl=http://head.xiaonei.com/photos/0/0/men_main.gif; t=3df131639fc50c5fd3189244f8fcd7ba5; societyguester=3df131639fc50c5fd3189244f8fcd7ba5; id=923768535; xnsid=617e5204; ver=7.0; loginfrom=null; wp_fold=0'
} # 发起请求获取响应
response = requests.get(url,headers=headers) # 验证是否登陆成功
print (re.findall('迷途',response.content.decode()))
print (response.url,response.status_code)
方法二:get方法参数中带cookies
#coding:utf-8
import requests
import re
# 构建url
url = 'http://www.renren.com/923768535' # 构建请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.89 Safari/537.36',
} # 构建cookies
temp = 'anonymid=j6c96snx6i82ml; _r01_=1; _ga=GA1.2.1361939841.1504226199; depovince=GUZ; JSESSIONID=abcjqMbx6AsKFexLLwC_v; jebe_key=2b511d4c-0b0e-4e77-bcbd-28616d344a3d%7Ceda913e449d4d8cd6ac80727da63a1fe%7C1510156700139%7C1%7C1510156700366; ch_id=10016; jebecookies=5dddc92f-140c-41ef-be32-c6e023d9a0f2|||||; ick_login=28789547-d18b-4142-af78-35fb306907a3; _de=4F1FF60C280AA48B2CD1201DB4C6DF4A; p=1d40e67e3bf905bdc36671554ad798895; first_login_flag=1; ln_uact=17173805860; ln_hurl=http://head.xiaonei.com/photos/0/0/men_main.gif; t=3df131639fc50c5fd3189244f8fcd7ba5; societyguester=3df131639fc50c5fd3189244f8fcd7ba5; id=923768535; xnsid=617e5204; ver=7.0; loginfrom=null; wp_fold=0'
cookies = {}
for i in temp.split('; '):
cookies[i.split('=')[0]] = i.split('=')[1]
# print (cookies) # 发送请求获取响应
response = requests.get(url,headers=headers,cookies=cookies)
# 验证登录
print (re.findall('迷途',response.content.decode()))
print (response.url,response.status_code)
(二)session的状态保持。
有了session后,第二次请求是,就不用再传cookies、headers了。
#coding:utf-8
import requests
import re # 构建url
url = 'http://www.renren.com/PLogin.do'
# 构建headers
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.89 Safari/537.36',
}
# 构建表单数据
post_data = {
'email': '17173805860',
'password': '1qaz@WSX3edc'
} # 构建session对象
session = requests.session() # 发送请求模拟登陆
response = session.post(url, headers=headers, data=post_data)
print (response.url)
# 跳转新鲜事
response1 = session.get('http://www.renren.com/923768535')
# 验证登录
print (re.findall('迷途',response1.content.decode()))
requests库的get请求,带有cookies的更多相关文章
- 『居善地』接口测试 — 5、使用Requests库发送POST请求
目录 1.请求正文是application/x-www-form-urlencoded 2.请求正文是raw (1)json格式文本(application/json) (2)xml格式文本(text ...
- requests库的post请求
requests库的post请求 #coding:utf-8 import requests import json class Trans(object): def __init__(self, w ...
- 『居善地』接口测试 — 4、Requests库发送GET请求
目录 1.使用Requests库发送带参数的GET请求 2.查看GET请求的内容 3.带请求头.参数的Get请求 Requests库GET请求是使用HTTP协议中的GET请求方式对目标网站发起请求. ...
- python利用requests库模拟post请求时json的使用
我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: 1.GET是通过URL方式请求,可以直接看到,明文传输. 2.POS ...
- 4.爬虫 requests库讲解 GET请求 POST请求 响应
requests库相比于urllib库更好用!!! 0.各种请求方式 import requests requests.post('http://httpbin.org/post') requests ...
- 用python的Requests库模拟http请求
一.先了解几个重要的http请求头或响应头信息 Request Headers: Host: 描述请求将被发送的目的地,包括,且仅仅包括域名和端口号. Origin: 说明请求从哪里发起的,包括,且仅 ...
- 【python接口自动化】- 使用requests库发送http请求
前言:什么是Requests ?Requests 是⽤Python语⾔编写,基于urllib,采⽤Apache2 Licensed开源协议的 HTTP 库.它⽐ urllib 更加⽅便,可以节约我们⼤ ...
- python爬虫(八) requests库之 get请求
requests库比urllib库更加方便,包含了很多功能. 1.在使用之前需要先安装pip,在pycharm中打开: 写入pip install requests命令,即可下载 在github中有关 ...
- requests库的get请求(加上head,加上get参数请求)
#coding:utf-8 # 导入requests import requests # 构建url url = 'http://www.baidu.com' # 发送请求,获取响应 # respon ...
随机推荐
- Elasticsearch 版本控制
悲观并发控制(Pessimistic concurrency control) 这在关系型数据库中被广泛的使用,假设冲突的更改经常发生,为了解决冲突我们把访问区块化.典型的例子是在读一行数据前锁定这行 ...
- MVC的初步认识理论
说起来写博客可以说一个月没来啦,我们狠狠的放假一个月,想一想都奇怪.而是想一下以后的假期还会这样吗?或许这是作为学生的我们的最后一个长的假期啦,以后就要面对工作再也没有寒假暑假之分啦,在这一个月的时间 ...
- C# GIF图片的分解以及合成
dll下载的地址 http://www.codeproject.com/Articles/11505/NGif-Animated-GIF-Encoder-for-NET 使用主要调用的是Compo ...
- 今日Java——Cay Horstmann访谈
这是本人在InfoQ中文站审校的文章,原文链接是:http://www.infoq.com/cn/articles/java_cay_horstmann,感觉内容很不错,分享给大家看看. 近日Info ...
- Linux 下误删除恢复,(文件名无法找回)
手贱命令写错了,直接把一个目录下的文件全删了,用下面的方法虽然恢复了,但是还是有几个文件没有找回来...(可以找回,但是要在另一个盘进行操作) 如果不小心用rm –rf xxx删除了文件或目录,在ex ...
- jsp连接数据库的乱码问题 servlet请求参数编码处理get post
1.在所有需要读取数据的地方用下面的方式.同时jsp必须统一编码,如我都是UTF-8 String userName= new String(request.getParameter("us ...
- 关于array.sort(array,array)
// 基于第一个 System.Array 中的关键字,使用每个关键字的 System.IComparable 实现,对两个一维 System.Array // 对象(一个包含关键字,另一个包含对应的 ...
- Ubuntu Eclipse配置Python开发环境
一 在Eclipse中安装pydev插件 启动Eclipse, 点击Help->Install New Software... 在弹出的对话框中,点Add 按钮. Name中填:Pydev Lo ...
- [转]F5负载均衡算法及基本原理
原文:Intro to Load Balancing for Developers – The Algorithms 转载:http://blog.gesha.net/archives/205/ p ...
- loop设备及losetup命令
1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们像块设备一样访问一个文件.在使用之前,一个 loop 设备必 ...