在爬取某些数据时,需要进行网页的登陆,才可以进行数据的抓取工作。Cookies登陆就像很多网页中的自动登陆功能一样,可以让用户第二次登陆时不在需要验证账号和密码的情况下进行登陆。在requests模块中实现Cookies登陆时,首先需要在浏览器的开发者工具中找到可以实现登陆的Cookies信息,然后将Cookies信息处理并添加至RequestsCookieJar的对象中,最后将RequestsCookieJar对象作为网络请求的Cookies参数发送网络请求即可。

登陆前F12打开开发者工具,然后点击登陆,在Network中点击Name为www.douban.com的标签,然后找到Request Headers 找到Cookie和Referer 把数据填写到代码响应的位置,然后执行如下代码:

import requests#导入网络请求模块
from lxml import etree#导入lxml模块
from requests.cookies import RequestsCookieJarcookies = 'bid=pjgLNxf4l58; gr_user_id=3810b31e-93ac-4218-8854-beb0a92270f3; _vwo_uuid_v2=D723216EF67BD847DE34C8293BBE9E476|580f3421ba24bf6f046142cfc8687e24; ll="118177"; __yadk_uid=QGASRU74csarwZMirNUKV2UKBsgYb1jE; douban-fav-remind=1; __utmv=30149280.21866; douban-profile-remind=1; __utmz=30149280.1606616223.6.3.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; __gads=ID=ea2ae52b8181609a-22edd78d4cc200fc:T=1593688576:RT=1593688576:R:S=ALNI_MZie4Sb8bYIKcULjos76IVwiLehCA; _pk_ref.100001.8cb4=%5B%22%22%2C%22%22%2C1606700574%2C%22https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DdebQUs80fHnuan4dSHOFIclPn6nRfmywWRzpgSnxoEQPNMcF4PvJpy6HRBbBsHonagTUyVIVFfQc2_fFDT25QK%26wd%3D%26eqid%3Dbb0850e80003e0bc000000055fc30448%22%5D; _pk_id.100001.8cb4=0f4e7ccad794e91b.1593688463.6.1606700574.1606616222.; _pk_ses.100001.8cb4=*; __utma=30149280.1002979081.1587122057.1606616223.1606700575.7; __utmc=30149280; __utmt=1; __utmb=30149280.1.10.1606700575; dbcl2="226532095:bJULCGInIN8"'#此处填写登陆后网页中的Cookies信息
headers = {'Host': 'www.douban.com','Referer': 'https://accounts.douban.com/','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36'
}
#创建requestsCookieJar对象,用于设置Cookies信息
cookies_jar = RequestsCookieJar()
for cookie in cookies.split(';'):key,value = cookie.split('=', 1)cookies_jar.set(key,value)#将Cookies保存requestsCookieJar当中
#发送网络请求
response = requests.get('http://www.douban.com/',headers=headers,cookies=cookies_jar)
if response.status_code==200:html = etree.HTML(response.text)#解析HTML代码#获取用户名name = html.xpath('//*[@id="db-global-nav"]/div/div[1]/ul/li[2]/a/span[1]/text()')print(name[0])#打印用户名

输出结果:
戴上微笑的帐号 #此处应该显示的是你登陆时候的账号的用户名

python 爬虫 requests模块 中的Cookies 验证 通过验证cookies模拟登陆豆瓣登陆相关推荐

  1. Python爬虫---requests模块的基本使用

    Python爬虫-requests模块的基本使用 基础 什么是爬虫? 就是通过编写程序模拟浏览器上网,然后让其去互联网上爬取数据的过程. 爬虫的分类 通用爬虫 抓取互联网中的一整张页面数据 聚焦爬虫 ...

  2. Python爬虫 — requests模块(1)

    Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档症.抑 ...

  3. python爬虫requests模块

    读书使人充实,讨论使人机智,笔记使人准确-.凡有所学,皆成性格. ---- (英国)培根 文章目录 简单的代码实现 requests.text与requests.content的区别 通过对 resp ...

  4. Python爬虫requests模块在线生成请求头

    写爬虫的时候,请求头几乎是必写的,但是写起来有点繁琐,虽然不难,但是麻烦,所以这时候,一个自动生成请求头的方法就显得很重要了 在线生成请求头 https://curlconverter.com/ 使用 ...

  5. python怎么爬取Linux作业,Python爬虫之使用Fiddler+Postman+Python的requests模块爬取各国国旗...

    介绍 本篇博客将会介绍一个Python爬虫,用来爬取各个国家的国旗,主要的目标是为了展示如何在Python的requests模块中使用POST方法来爬取网页内容. 为了知道POST方法所需要传递的HT ...

  6. Python爬虫之使用Fiddler+Postman+Python的requests模块爬取各国国旗

    介绍   本篇博客将会介绍一个Python爬虫,用来爬取各个国家的国旗,主要的目标是为了展示如何在Python的requests模块中使用POST方法来爬取网页内容.   为了知道POST方法所需要传 ...

  7. 爬虫之requests模块中cookies参数的使用

    爬虫之requests模块中cookies参数的使用 上一篇文章在headers参数中携带cookie,也可以使用专门的cookies参数 cookies参数的形式:字典 cookies = {&qu ...

  8. 数据采集与清洗基础习题(二)Python爬虫常用模块,头歌参考答案

    数据采集习题参考答案,会持续更新,点个关注防丢失.为了方便查找,已按照头歌重新排版,朋友们按照头歌所属门类查找实训哦,该篇为Python爬虫常用模块. 创作不易,一键三连给博主一个支持呗. 文章目录 ...

  9. 【python】python爬虫requests库详解

    1.安装:pip install requests 简介:Requests是一个优雅而简单的Python HTTP库,与之前的urllibPython的标准库相比,Requests的使用方式非常的简单 ...

最新文章

  1. 厦门大学计算机专业录取分数线2019,厦门大学2019年本科生录取分数线
  2. java转义字符_Java入门 - 语言基础 - 13.Character类
  3. pythonfor循环嵌套_python-嵌套和for循环中的字典和列表中的项...
  4. git push 代码报错 Pushing to Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
  5. Unhandled event loop exception PermGen space
  6. 剧透人生!你什么时候结婚换工作甚至狗带,Facebook都知道
  7. IDEA 在头注解上添加用户名称和时间
  8. 函数防抖(debounce)和节流(throttle)以及lodash的debounce源码赏析
  9. 痛与快乐有一个代码是什么_痛与快乐有一个代码是什么_痛苦与快乐
  10. 《程序员代码面试指南》总结
  11. Python3爬取起点中文网阅读量信息,解决文字反爬~~~附源代码
  12. Altium Designer库文件与Protel 99SE库文件转化
  13. 是时候抛弃 Svelte、React 和 VUE 了吗?
  14. word公式编号问题
  15. 二叉树非递归遍历的一点理解
  16. 集成电路设计学习笔记(二)基于IC617反相器设计之原理图绘制
  17. 基于约束的装配设计【CadQuery】
  18. OPC UA - Open62541学习
  19. 浙江最好的计算机学校,浙江2021年什么计算机学校最好
  20. 基于DDPG、TD3的UR5装配仿真及其对比

热门文章

  1. html实现展开余下全文多个,DIV+css内容太长,实现点击展开余下全文
  2. matlab三维图像分割,Matlab 沿三维任意方向切割CT图的仿真计算
  3. 解读 ESP32 API参考-system-App Image Format
  4. uniapp中根据URL链接生成二维码(适用所有Javascript运行环境的前端应用),保存二维码到本地相册。
  5. STM32L0系列的ADC用法
  6. pcb 受潮_高温潮湿对PCB电路板有影响吗?
  7. latex中文简易模板,课程论文使用
  8. LDPC码的EXIT图
  9. Unity打包的PC项目生成一个EXE文件
  10. OrCAD Capture CIS 17.2导入Altium Designer原理图