详解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 相关文章推荐
使用Python的Scrapy框架十分钟爬取美女图
Dec 26 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
python中pip的安装与使用教程
Aug 10 Python
Python二叉搜索树与双向链表转换算法示例
Mar 02 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
Mar 13 Python
Python3 实现串口两进程同时读写
Jun 12 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
TensorFlow使用Graph的基本操作的实现
Apr 22 Python
python获取时间戳的实现示例(10位和13位)
Sep 23 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
pycharm 实现光标快速移动到括号外或行尾的操作
Feb 05 Python
python Tkinter的简单入门教程
Apr 11 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
PHP4和PHP5共存于一系统
2006/11/17 PHP
php下使用无限生命期Session的方法
2007/03/16 PHP
php修改时间格式的代码
2011/05/29 PHP
PHP字符串word末字符实现大小写互换的方法
2014/11/10 PHP
PHP利用超级全局变量$_POST来接收表单数据的实例
2016/11/05 PHP
javascript 模拟点击广告
2010/01/02 Javascript
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
Javascript基础知识(一)核心基础语法与事件模型
2014/09/29 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
JS实现往下不断流动网页背景的方法
2015/02/27 Javascript
使用javaScript动态加载Js文件和Css文件
2015/10/24 Javascript
CSS或者JS实现鼠标悬停显示另一元素
2016/01/22 Javascript
详解AngularJS过滤器的使用
2016/03/11 Javascript
jQuery中选择器的基础使用教程
2016/05/23 Javascript
Node.js中路径处理模块path详解
2016/11/14 Javascript
node.js实现复制文本到剪切板的功能
2017/01/23 Javascript
JS动态生成年份和月份实例代码
2017/02/04 Javascript
JavaScript实现实时更新系统时间的实例代码
2017/04/04 Javascript
vue路由嵌套的SPA实现步骤
2017/11/06 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
jquery引入外部CDN 加载失败则引入本地jq库
2018/05/23 jQuery
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
vue开发拖拽进度条滑动组件
2019/09/21 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
Python中使用第三方库xlrd来写入Excel文件示例
2015/04/05 Python
Python 实现引用其他.py文件中的类和类的方法
2018/04/29 Python
Python函数参数操作详解
2018/08/03 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
Python虚拟环境库virtualenvwrapper安装及使用
2020/06/17 Python
百思买美国官网:Best Buy
2016/07/28 全球购物
同步和异步有何异同,在什么情况下分别使用他们?举例说明
2014/02/27 面试题
网上祭英烈活动总结
2015/02/04 职场文书
送给火锅店的创意营销方案!
2019/07/08 职场文书
MySQL约束(创建表时的各种条件说明)
2022/06/21 MySQL