详解python 模拟豆瓣登录(豆瓣6.0)


Posted in Python onApril 18, 2019

最近在学习python爬虫,看到网上有很多关于模拟豆瓣登录的例子,随意找了一个试了下,发现不能运行,对比了一下代码和豆瓣网站,发现原来是豆瓣网站做了修改,增加了反爬措施。

首先看下要模拟登录的网站:

详解python 模拟豆瓣登录(豆瓣6.0)

打开开发者模式:

详解python 模拟豆瓣登录(豆瓣6.0)

在账号和密码随意填入数据:

详解python 模拟豆瓣登录(豆瓣6.0)

发现会发送一个post请求:

详解python 模拟豆瓣登录(豆瓣6.0)

ur是:https://accounts.douban.com/j/mobile/login/basic

数据格式是:

详解python 模拟豆瓣登录(豆瓣6.0)

于是可以来编写代码:

import requests

def main():
  url_basic = 'https://accounts.douban.com/j/mobile/login/basic'
  url = 'https://www.douban.com/'
  ua_headers = { "User-Agent":'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)'}
  data = {
    'ck': '',
    'name': '自己的账号',
    'password': '自己的密码',
    'remember': 'false',
    'ticket': ''
  }

  s = requests.session()
  s.post(url=url_basic, headers=ua_headers, data=data)
  response = s.get(url=url, headers=ua_headers)
  with open('douban.html' , 'wb') as f:
    f.write(response.content)

if __name__ == '__main__':
  main()

第一步:

创建 s = requests.session()

作用是跨请求保持参数,也就是说s这个session对象所发出的所有请求之间会保持cookies

第二步:

用创建好的session对象携带账号,密码去发送post请求。

由于改版后的豆瓣返回的是一个josn数据,而不是像以前一样重定向,所以需要我们来重定向。

第三步:

携带登录成功保存的cookie去访问首页,就会得到你自己的首页.

最后得到个人首页:

详解python 模拟豆瓣登录(豆瓣6.0)

以上所述是小编给大家介绍的python模拟豆瓣登录详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Django中URLconf和include()的协同工作方法
Jul 20 Python
Python Paramiko模块的安装与使用详解
Nov 18 Python
Python实现自动为照片添加日期并分类的方法
Sep 30 Python
python钉钉机器人运维脚本监控实例
Feb 20 Python
python 操作hive pyhs2方式
Dec 21 Python
python opencv进行图像拼接
Mar 27 Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
Apr 10 Python
Pycharm修改python路径过程图解
May 22 Python
python使用多线程查询数据库的实现示例
Aug 17 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
Nov 05 Python
python反爬虫方法的优缺点分析
Nov 25 Python
tensorflow2.0教程之Keras快速入门
Feb 20 Python
Python面向对象总结及类与正则表达式详解
Apr 18 #Python
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
Apr 18 #Python
详解python数据结构和算法
Apr 18 #Python
python基础知识(一)变量与简单数据类型详解
Apr 17 #Python
关于python多重赋值的小问题
Apr 17 #Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
Apr 17 #Python
一步步教你用python的scrapy编写一个爬虫
Apr 17 #Python
You might like
php中base_convert()进制数字转换函数实例
2014/11/20 PHP
php三种实现多线程类似的方法
2015/10/30 PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
2018/10/14 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
Javascript学习笔记7 原型链的原理
2010/01/11 Javascript
JavaScript中实现块作用域的方法
2010/04/01 Javascript
jquery中animate动画积累的解决方法
2013/10/05 Javascript
js中arguments,caller,callee,apply的用法小结
2014/01/28 Javascript
深入理解JS中的substr和substring
2016/04/26 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
Bootstrap CSS布局之图像
2016/12/17 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
VueJs组件之父子通讯的方式
2018/05/06 Javascript
微信小程序 网络通信实现详解
2019/07/23 Javascript
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
在Vue 中获取下拉框的文本及选项值操作
2020/08/13 Javascript
[00:13]天涯墨客二技能展示
2018/08/25 DOTA
Python递归遍历列表及输出的实现方法
2015/05/19 Python
python3抓取中文网页的方法
2015/07/28 Python
浅谈python中的占位符
2017/11/09 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
Python 2种方法求某个范围内的所有素数(质数)
2020/01/31 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
2020/06/06 Python
Python 获取异常(Exception)信息的几种方法
2020/12/29 Python
用纯css3和html制作泡沫对话框实现代码
2013/03/21 HTML / CSS
京东国际站:JOYBUY
2017/11/23 全球购物
日期和时间问题
2015/01/04 面试题
英语故事演讲稿
2014/04/29 职场文书
道路施工安全责任书
2014/07/24 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
邀请函模板
2015/02/02 职场文书
试用期自我评价范文
2015/03/10 职场文书
红歌会主持词
2015/07/02 职场文书
Django利用AJAX技术实现博文实时搜索
2021/05/06 Python