回顾

小饼干 cookie, 可以用来模拟登录

wordpress-edu-3autumn.localprod.forc.work

如果你想评论, 需要先登录...

登录地址: wordpress-edu-3autumn.localprod.forc.work/wp-login.ph…

测试账号:spiderman,密码:crawler334566

登录后, 显示评论框

发表评论后, 可以看到之前发表的评论

接着说回登录页面...

cookies及其用法

一般当你登录一个网站,你都会在登录页面看到一个可勾选的选项“记住我”,

如果你勾选了,以后你再打开这个网站就会自动登录,这就是cookie在起作用

当登录博客账号spiderman,并勾选“记住我”,服务器会生成一个cookies和spiderman账号绑定。

服务器把这个cookies告诉你的浏览器,让浏览器把cookies存储到你的本地电脑。

下一次,浏览器带着cookies访问博客,服务器会知道你是spiderman,不需要再重复输入账号密码

cookies也是有时效性的,过期后就会失效。

哪怕勾选了“记住我”,但一段时间过去了,网站还是会提示你要重新登录

书写登录代码...

import requests
#引入requests。
url = ' https://wordpress-edu-3autumn.localprod.forc.work/wp-login.php'
#把登录的网址赋值给url。
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'
}
#加请求头,前面有说过加请求头是为了模拟浏览器正常的访问,避免被反爬虫。
data = {
'log': 'spiderman',  #写入账户
'pwd': 'crawler334566',  #写入密码
'wp-submit': '登录',
'redirect_to': 'https://wordpress-edu-3autumn.localprod.forc.work/wp-admin/',
'testcookie': '1'
}
#把有关登录的参数封装成字典,赋值给data。
login_in = requests.post(url,headers=headers,data=data)
#用requests.post发起请求,放入参数:请求登录的网址、请求头和登录参数,然后赋值给login_in。
print(login_in)
#打印login_in
复制代码

再看看发表评论时的请求...

发表评论所需要的代码, 注意注释...

import requests
# 登录, 获取cookies
url = "https://wordpress-edu-3autumn.localprod.forc.work/wp-login.php"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
}
data = {'log': 'spiderman','pwd': 'crawler334566','rememberme': 'forever','wp-submit': '登录','redirect_to': 'https://wordpress-edu-3autumn.localprod.forc.work','testcookie': '1'
}
res = requests.post(url, headers=headers, data=data)
# 使用cookies来发表评论
url1 = "https://wordpress-edu-3autumn.localprod.forc.work/wp-comments-post.php"
data1 = {'comment': 'hello world again','submit': '发表评论','comment_post_ID': '23','comment_parent': '0'
}
comment = requests.post(url1, headers=headers, data=data1, cookies=res.cookies)
print(comment.status_code)
复制代码

快速跳转:

猫哥教你写爬虫 000--开篇.md
猫哥教你写爬虫 001--print()函数和变量.md
猫哥教你写爬虫 002--作业-打印皮卡丘.md
猫哥教你写爬虫 003--数据类型转换.md
猫哥教你写爬虫 004--数据类型转换-小练习.md
猫哥教你写爬虫 005--数据类型转换-小作业.md
猫哥教你写爬虫 006--条件判断和条件嵌套.md
猫哥教你写爬虫 007--条件判断和条件嵌套-小作业.md
猫哥教你写爬虫 008--input()函数.md
猫哥教你写爬虫 009--input()函数-人工智能小爱同学.md
猫哥教你写爬虫 010--列表,字典,循环.md
猫哥教你写爬虫 011--列表,字典,循环-小作业.md
猫哥教你写爬虫 012--布尔值和四种语句.md
猫哥教你写爬虫 013--布尔值和四种语句-小作业.md
猫哥教你写爬虫 014--pk小游戏.md
猫哥教你写爬虫 015--pk小游戏(全新改版).md
猫哥教你写爬虫 016--函数.md
猫哥教你写爬虫 017--函数-小作业.md
猫哥教你写爬虫 018--debug.md
猫哥教你写爬虫 019--debug-作业.md
猫哥教你写爬虫 020--类与对象(上).md
猫哥教你写爬虫 021--类与对象(上)-作业.md
猫哥教你写爬虫 022--类与对象(下).md
猫哥教你写爬虫 023--类与对象(下)-作业.md
猫哥教你写爬虫 024--编码&&解码.md
猫哥教你写爬虫 025--编码&&解码-小作业.md
猫哥教你写爬虫 026--模块.md
猫哥教你写爬虫 027--模块介绍.md
猫哥教你写爬虫 028--模块介绍-小作业-广告牌.md
猫哥教你写爬虫 029--爬虫初探-requests.md
猫哥教你写爬虫 030--爬虫初探-requests-作业.md
猫哥教你写爬虫 031--爬虫基础-html.md
猫哥教你写爬虫 032--爬虫初体验-BeautifulSoup.md
猫哥教你写爬虫 033--爬虫初体验-BeautifulSoup-作业.md
猫哥教你写爬虫 034--爬虫-BeautifulSoup实践.md
猫哥教你写爬虫 035--爬虫-BeautifulSoup实践-作业-电影top250.md
猫哥教你写爬虫 036--爬虫-BeautifulSoup实践-作业-电影top250-作业解析.md
猫哥教你写爬虫 037--爬虫-宝宝要听歌.md
猫哥教你写爬虫 038--带参数请求.md
猫哥教你写爬虫 039--存储数据.md
猫哥教你写爬虫 040--存储数据-作业.md
猫哥教你写爬虫 041--模拟登录-cookie.md
猫哥教你写爬虫 042--session的用法.md
猫哥教你写爬虫 043--模拟浏览器.md
猫哥教你写爬虫 044--模拟浏览器-作业.md
猫哥教你写爬虫 045--协程.md
猫哥教你写爬虫 046--协程-实践-吃什么不会胖.md
猫哥教你写爬虫 047--scrapy框架.md
猫哥教你写爬虫 048--爬虫和反爬虫.md
猫哥教你写爬虫 049--完结撒花.md

转载于:https://juejin.im/post/5cfc4adde51d4577523f2350

猫哥教你写爬虫 041--模拟登录-cookie相关推荐

  1. 猫哥教你写爬虫 046--协程-实践-吃什么不会胖

    吃什么不会胖? 低热量食物 食物的数量有千千万,如果我们要爬取食物热量的话,这个数据量必然很大. 使用多协程来爬取大量的数据是非常合理且明智的选择 如果我们要爬取的话,那就得选定一个有存储食物热量信息 ...

  2. 猫哥教你写爬虫 006--条件判断和条件嵌套

    流程控制 复仇者联盟3-无限战争(搜集宝石) python里面, 不需要使用;来结尾, 因为python是使用换行来结束一行代码的 if判断, 没有{}, python使用缩进来表示层级关系 if.. ...

  3. 猫哥教你写爬虫 002--作业-打印皮卡丘

    作业 请你使用print()函数将下面的皮卡丘打印出来, 使用三种方式 へ /|/\7 ∠_// │ / /│ Z _,< / /`ヽ│ ヽ / 〉Y ` / /イ● 、 ● ⊂⊃〈 /() へ ...

  4. 猫哥教你写爬虫 005--数据类型转换-小作业

    小作业 程序员的一人饮酒醉 请运用所给变量,使用**str()**函数打印两句话. 第一句话:1人我编程累, 碎掉的节操满地堆 第二句话:2眼是bug相随, 我只求今日能早归 number1 = 1 ...

  5. 猫哥教你写爬虫 004--数据类型转换-小练习

    小练习, 改一下代码 word = '3.8' number = 1 sentence = '人工智障说:3.8+1等于' print(sentence+str(int(float(word)+num ...

  6. 猫哥教你写爬虫 037--爬虫-宝宝要听歌

    戴上耳机, 这个世界与我无关... 让我们用音乐洗涤心灵吧... 我们从哪个网站爬取资源呢? 专治各种不服... 打开酷狗官网, 可以看到搜索框,我们要爬取的数据就是搜索歌曲后, 酷狗后台返回的歌曲列 ...

  7. 猫哥教你写爬虫 027--模块介绍

    time模块 import time # 时间对象转美式时间字符串 print(time.asctime()) # Wed May 29 09:25:07 2019 print(time.asctim ...

  8. 猫哥教你写爬虫 000--开篇

    写在前面 快速跳转: 猫哥教你写爬虫 000--开篇.md 猫哥教你写爬虫 001--print()函数和变量.md 猫哥教你写爬虫 002--作业-打印皮卡丘.md 猫哥教你写爬虫 003--数据类 ...

  9. 爬虫日记-模拟登录cookie操作

    模拟登录cookie操作 我们之前已经实现了模拟人人网登录,那么我们接下来是不是可以直接用requests模块获取登录成功的界面的内容? 于是我们就那这个url做了请求. 结果访问到的html依然是登 ...

  10. Python爬虫--人人网模拟登录cookie(四)

    文章目录 模拟登录 一.人人网模拟登录 1.1 验证码识别 1.2 发送post请求 1.3 模拟登录cooki操作 1.4 cookie 1. 手动cookie处理 2. 自动处理 二.代理讲解 总 ...

最新文章

  1. AC日记——[Hnoi2017]影魔 bzoj 4826
  2. 问一下,线程池里面到底该设置多少个线程?
  3. Confluence 6 系统运行信息中的 JVM 内存使用情况
  4. unity 是厘米还是米_身高差45厘米! 这对重庆小情侣拍短视频晒幸福火了
  5. 产品运行所需的信息检索失败_禁煤后用什么替代锅炉?看看三种热源运行费用对比就知道了...
  6. 前端学习(2826):数据绑定
  7. Android MotionEvent中getX()、getRawX()和getTop()的区别
  8. NeHe OpenGL教程 第四课:旋转
  9. Linux-c对一个十六进制数的某一位取反
  10. Oracle数据库入门—基础知识
  11. 计算机算法分析与设计(第五版)
  12. 方正文祥E520硬盘保护卡还原卡软件使用要点讲解
  13. php展厅控制系统,展厅中控系统
  14. 消息总线VS消息队列
  15. python 封闭图形面积_Python求阴影部分面积
  16. Deadline = Diedline?拖延症幻想美好
  17. 2022年全国最新高级消防设施操作员模拟题库及答案
  18. PC 时代 Office 的仇,WPS 在 24 年后有机会报了
  19. aspx mysql 安全问题_ASP+access的安全问题及解决方法
  20. 基于PCA的图像压缩实现

热门文章

  1. 【DZX修改】根据性别不同显示不同的默认头像
  2. IP地址管理(IPAM)解决方案有哪些?
  3. 计算机是如何存储矩阵,如何存储稀疏邻接矩阵(How to store sparse adjacency matrix)
  4. 强劲大小核结构 三星将推八核处理器
  5. pdf合并成一个pdf怎么合并
  6. hdu 5467 Clarke and hunger games (lct)
  7. Dave Cheney去了Heptio
  8. android 五种存储方式,android数据五种存储
  9. Simulink与控制系统仿真笔记01
  10. so库生成和用法汇总