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中逻辑运算符的使用
May 13 Python
Python中用max()方法求最大值的介绍
May 15 Python
Python上传package到Pypi(代码简单)
Feb 06 Python
Python入门_浅谈数据结构的4种基本类型
May 16 Python
Django2.1.3 中间件使用详解
Nov 26 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
python基于json文件实现的gearman任务自动重启代码实例
Aug 13 Python
在python中使用pymysql往mysql数据库中插入(insert)数据实例
Mar 02 Python
Python类的绑定方法和非绑定方法实例解析
Mar 04 Python
使用Python实现批量ping操作方法
May 06 Python
python中time.ctime()实例用法
Feb 03 Python
浅谈Python xlwings 读取Excel文件的正确姿势
Feb 26 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
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
2013/04/13 PHP
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
2013/06/03 PHP
php数组添加元素方法小结
2014/12/20 PHP
PHP遍历目录文件的常用方法小结
2017/02/03 PHP
数据结构之利用PHP实现二分搜索树
2020/10/25 PHP
一个用js实现的页内搜索代码
2007/05/23 Javascript
js左右弹性滚动对联广告代码分享
2014/02/19 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
jquery实现图片预加载
2015/12/25 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
JavaScript实现汉字转换为拼音的库文件示例
2016/12/22 Javascript
vue1.0和vue2.0的watch监听事件写法详解
2018/09/11 Javascript
微信小程序实现原生步骤条
2019/07/25 Javascript
nodejs各种姿势断点调试的方法
2020/06/18 NodeJs
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python安装教程 Pycharm安装详细教程
2017/05/02 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
微信跳一跳python辅助软件思路及图像识别源码解析
2018/01/04 Python
python正则实现提取电话功能
2018/02/24 Python
15行Python代码带你轻松理解令牌桶算法
2018/03/21 Python
Django模板Templates使用方法详解
2019/07/19 Python
Python线上环境使用日志的及配置文件
2019/07/28 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
Django分组聚合查询实例分享
2020/04/29 Python
浅谈python锁与死锁问题
2020/08/14 Python
Python 处理日期时间的Arrow库使用
2020/08/18 Python
简历里的自我评价范文
2014/02/24 职场文书
行政专员的岗位职责
2014/03/10 职场文书
小学校长先进事迹材料
2014/05/13 职场文书
激励员工的口号
2014/06/16 职场文书
学习党史心得体会2016
2016/01/23 职场文书
《西游记》读后感(3篇)
2019/09/20 职场文书
Mysql MVCC机制原理详解
2021/04/20 MySQL
Django显示可视化图表的实践
2021/05/10 Python