详解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字典排序实例详解
May 20 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
Oct 18 Python
用pickle存储Python的原生对象方法
Apr 28 Python
Python将DataFrame的某一列作为index的方法
Apr 08 Python
利用python对Excel中的特定数据提取并写入新表的方法
Jun 14 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 Python
Python3中lambda表达式与函数式编程讲解
Jan 14 Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
Aug 12 Python
Python通过字典映射函数实现switch
Nov 06 Python
selenium学习教程之定位以及切换frame(iframe)
Jan 04 Python
python re.match()用法相关示例
Jan 27 Python
python实现MD5进行文件去重的示例代码
Jul 09 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链表数据结构(单链表)
2016/06/08 PHP
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
location.search在客户端获取Url参数的方法
2010/06/08 Javascript
强大的jquery插件jqeuryUI做网页对话框效果!简单
2011/04/14 Javascript
Jquery多选下拉列表插件jquery multiselect功能介绍及使用
2013/05/24 Javascript
JS取得绝对路径的实现代码
2015/01/16 Javascript
浅谈JavaScript数据类型及转换
2015/02/28 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
2016/09/05 Javascript
ES6概念 ymbol.for()方法
2016/12/25 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
2017/01/06 Javascript
基于原生js运动方式关键点的总结(推荐)
2017/10/01 Javascript
jQuery无冲突模式详解
2019/01/17 jQuery
Webpack4+Babel7+ES6兼容IE8的实现
2019/04/10 Javascript
JavaScript使用canvas绘制随机验证码
2020/02/17 Javascript
Vue实现移动端拖拽交换位置
2020/07/29 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
[02:02]特效爆炸!DOTA2珍宝之瓶待你开启
2018/08/21 DOTA
[47:08]OG vs INfamous 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python数据结构与算法之二叉树结构定义与遍历方法详解
2017/12/12 Python
pytorch模型预测结果与ndarray互转方式
2020/01/15 Python
用python解压分析jar包实例
2020/01/16 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
Python Map 函数的使用
2020/08/28 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
应聘面试自我评价
2014/01/24 职场文书
委托书怎么写
2014/07/31 职场文书
债务纠纷委托书范本
2014/10/14 职场文书
专职安全员岗位职责
2015/04/11 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
上诉状格式
2015/05/23 职场文书
狼牙山五壮士观后感
2015/06/09 职场文书
计算机教师工作总结
2015/08/13 职场文书
2016年先进班集体事迹材料
2016/02/26 职场文书
numpy数据类型dtype转换实现
2021/04/24 Python
Python import模块的缓存问题解决方案
2021/06/02 Python