python爬虫中get和post方法介绍以及cookie作用


Posted in Python onFebruary 08, 2018

首先确定你要爬取的目标网站的表单提交方式,可以通过开发者工具看到。这里推荐使用chrome。

这里我用163邮箱为例

打开工具后再Network中,在Name选中想要了解的网站,右侧headers里的request method就是提交方式。status如果是200表示成功访问下面的有头信息,cookie是你登录之后产生的存储会话(session)信息的。第一次访问该网页需要提供用户名和密码,之后只需要在headers里提供cookie就可以登陆进去。

引入requests库,会提供get和post的方法。

代码示例:

import requests
import ssl

user_agent="Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0"
accept='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
accept_language='zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3'
upgrade='1'
headers={
  'User-Agent':user_agent,
  'Accept':accept,
  'Accept-Language':accept_language,
'Cookie':'....'#这里填入你登陆后产生的cookie
}
r = requests.get("http://mail.163.com/js6/main.jsp?sid=OAwUtGgglzEJoANLHPggrsKKAhsyheAT&df=mail163_letter#module=welcome.WelcomeModule%7C%7B%7D",headers=headers,verify=False)
fp = open("/temp/csdn.txt","w",encoding='utf-8')
fp.write(str(r.content,'utf-8'))
fp.close()

这里我引入了ssl库,因为我第一次访问的网页证书过期。如果我们使用爬虫进入这样的网站时,会报错:SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)

在requests的get和post方法中,有一个参数为verify,把他设为False后会禁掉证书的要求

Python 相关文章推荐
Python解决鸡兔同笼问题的方法
Dec 20 Python
python实现按行切分文本文件的方法
Apr 18 Python
python+selenium实现163邮箱自动登陆的方法
Dec 31 Python
Python使用正则表达式获取网页中所需要的信息
Jan 29 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
Apr 26 Python
python requests爬取高德地图数据的实例
Nov 10 Python
简单了解python代码优化小技巧
Jul 08 Python
Python实现Selenium自动化Page模式
Jul 14 Python
TensorFlow梯度求解tf.gradients实例
Feb 04 Python
Eclipse配置python默认头过程图解
Apr 26 Python
Python中openpyxl实现vlookup函数的实例
Oct 28 Python
python中time包实例详解
Feb 02 Python
Python OpenCV 直方图的计算与显示的方法示例
Feb 08 #Python
python OpenCV学习笔记之绘制直方图的方法
Feb 08 #Python
Python列表推导式与生成器表达式用法示例
Feb 08 #Python
详解python OpenCV学习笔记之直方图均衡化
Feb 08 #Python
python OpenCV学习笔记实现二维直方图
Feb 08 #Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
Feb 08 #Python
Python编程argparse入门浅析
Feb 07 #Python
You might like
PHP empty函数报错解决办法
2014/03/06 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
2019/04/15 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
2009/05/21 Javascript
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
php上传图片并给图片打上透明水印的代码
2010/06/07 Javascript
IE下js调试工具Companion.JS
2010/10/15 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
2013/11/06 Javascript
浅谈document.write()输出样式
2015/05/07 Javascript
JQuery实现鼠标移动图片显示描述层的方法
2015/06/25 Javascript
jQuery移动web开发中的页面初始化与加载事件
2015/12/03 Javascript
jquery获取css的color值返回RGB的方法
2015/12/18 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
通过源码分析Vue的双向数据绑定详解
2017/09/24 Javascript
原生js+canvas实现下雪效果
2020/08/02 Javascript
python自定义类并使用的方法
2015/05/07 Python
理解Python中的With语句
2016/03/18 Python
简介Python的collections模块中defaultdict类型的用法
2016/07/07 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
用python求一重积分和二重积分的例子
2019/12/06 Python
快速查找Python安装路径方法
2020/02/06 Python
使用pth文件添加Python环境变量方式
2020/05/26 Python
Python利用myqr库创建自己的二维码
2020/11/24 Python
python不同版本的_new_不同点总结
2020/12/09 Python
matplotlib自定义鼠标光标坐标格式的实现
2021/01/08 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
2012/06/04 HTML / CSS
经典c++面试题五
2014/12/17 面试题
如何删除一个表里面的重复行
2013/07/13 面试题
医学生实习自荐信
2013/10/01 职场文书
外贸学院会计专业应届生求职信
2013/11/14 职场文书
Mysql使用全文索引(FullText index)的实例代码
2022/04/03 MySQL
Redis+AOP+自定义注解实现限流
2022/06/28 Redis