(一)如何带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的更多相关文章

  1. 『居善地』接口测试 — 5、使用Requests库发送POST请求

    目录 1.请求正文是application/x-www-form-urlencoded 2.请求正文是raw (1)json格式文本(application/json) (2)xml格式文本(text ...

  2. requests库的post请求

    requests库的post请求 #coding:utf-8 import requests import json class Trans(object): def __init__(self, w ...

  3. 『居善地』接口测试 — 4、Requests库发送GET请求

    目录 1.使用Requests库发送带参数的GET请求 2.查看GET请求的内容 3.带请求头.参数的Get请求 Requests库GET请求是使用HTTP协议中的GET请求方式对目标网站发起请求. ...

  4. python利用requests库模拟post请求时json的使用

    我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: 1.GET是通过URL方式请求,可以直接看到,明文传输. 2.POS ...

  5. 4.爬虫 requests库讲解 GET请求 POST请求 响应

    requests库相比于urllib库更好用!!! 0.各种请求方式 import requests requests.post('http://httpbin.org/post') requests ...

  6. 用python的Requests库模拟http请求

    一.先了解几个重要的http请求头或响应头信息 Request Headers: Host: 描述请求将被发送的目的地,包括,且仅仅包括域名和端口号. Origin: 说明请求从哪里发起的,包括,且仅 ...

  7. 【python接口自动化】- 使用requests库发送http请求

    前言:什么是Requests ?Requests 是⽤Python语⾔编写,基于urllib,采⽤Apache2 Licensed开源协议的 HTTP 库.它⽐ urllib 更加⽅便,可以节约我们⼤ ...

  8. python爬虫(八) requests库之 get请求

    requests库比urllib库更加方便,包含了很多功能. 1.在使用之前需要先安装pip,在pycharm中打开: 写入pip install requests命令,即可下载 在github中有关 ...

  9. requests库的get请求(加上head,加上get参数请求)

    #coding:utf-8 # 导入requests import requests # 构建url url = 'http://www.baidu.com' # 发送请求,获取响应 # respon ...

随机推荐

  1. JDBC批量执行executeBatch

    JDBC事务 在数据库中,所谓事务是指一组逻辑操作单元,使数据从一种状态变换到另一种状态.为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元:当它全部完成时,数据的一致性可以保持,而当这 ...

  2. 【加解密专辑】对接触到的PGP、RSA、AES加解密算法整理

    先贴代码,有空再整理思路 PGP加密 using System; using System.IO; using Org.BouncyCastle.Bcpg; using Org.BouncyCastl ...

  3. 修改JS文件不能及时在页面中体现,需重启浏览器?

    对JS文件做个小小的改动,哪怕是加一句简单的ALERT语句,都要重启浏览器才能看到.你有这样的烦恼吗?怎样不用重启浏览器就能及时体现JS的变化呢? 对浏览器(IE)做如下设置即可:1.点击 工具栏 - ...

  4. 通过orderby关键字,LINQ可以实现升序和降序排序。LINQ还支持次要排序。

    通过orderby关键字,LINQ可以实现升序和降序排序.LINQ还支持次要排序. LINQ默认的排序是升序排序,如果你想使用降序排序,就要使用descending关键字. static void M ...

  5. mac下编译 boost编译工具b2

    cd boost_1_64_0/tools/build ./bootstrap.sh --with-toolset=gcc 输出: -n Bootstrapping the build engine ...

  6. git分支的相关问题

    场景:github上准备展示vue打包的项目,做预览的功能,首先创建了分支,gh-page,然后成功将dist文件上传到了gh-page分支中,但是,在Settings的时候,发现 并没有gh-pag ...

  7. JVM工具jinfo实践

    一.jinfo命令格式 命令格式: jinfo [option] <pid> Usage: jinfo [option] <pid> (to connect to runnin ...

  8. 【POJ2888】Magic Bracelet Burnside引理+欧拉函数+矩阵乘法

    [POJ2888]Magic Bracelet 题意:一个长度为n的项链,有m种颜色的珠子,有k个限制(a,b)表示颜色为a的珠子和颜色为b的珠子不能相邻,求用m种珠子能串成的项链有多少种.如果一个项 ...

  9. python 测试框架之---testtools

    在tempest框架中,使用的是testtools为基础框架来运行接口自动化 一.初识 testools是属于python中诸多自动化框架中的一个,官方文档如下: http://testtools.r ...

  10. jquery给动态添加的dom元素绑定事件

    $('input').click(function () { //处理代码 }); 这只能是对已经加载好的元素定义事件,那些后来添加插入的元素则需要另行绑定,对于页面中动态添加的元素,在页面加载完成后 ...