浅析Python requests 模块


Posted in Python onOctober 09, 2020

Python requests 模块

requests 模块是我们使用的 python爬虫 模块 可以完成市场进80%的爬虫需求。

安装

pip install requests

使用

requests模块代码编写的流程:

  • - 指定url
  • - 发起请求
  • - 获取响应对象中的数据
  • - 持久化存储
-------------案例-------------------------
import requests
# 指定url
url="https://www.sogou.com/"
# 发起请求
response = requests.get(url)
# 获取响应对象中的数据
page_text = response.text
# 持久化存储
with open('./sogou.html','w',encoding='utf-8') as fp:
  fp.write()
-------------------------------------------

参数

# post 数据
response = requests.post(url=url,data=data,headers=headers)

# get 数据
response = requests.get(url=url,data=data,headers=headers)

# 返回二进制数据
response.content 

# 返回字符串数据  
response.text  

# 返回json对象   
response.json()

其他了解

1、该模块实现爬取数据前需要查找需要爬取数据的指定URL,可通过浏览器自带抓包功能。

# 浏览器抓取 Ajax 请求
F12 --> Network --> XHR --> Name --> Response

2、上面的headers参数是进行UA伪装为了反反爬

反爬机制:UA检测 --> UA伪装

3、下面是http我们爬包是常用的请求头参数

- accept: 浏览器通过这个头告诉服务器,他所支持的数据类型
- Accept-Charset:浏览器通过这个头告诉服务器,它支持那种字符集

- Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式

- Accept-Language:浏览器通过这个头告诉服务器,他的语言环境

- Host:浏览器同过这个头告诉服务器,想访问哪台主机

- If-ModifiedSince:浏览器通过这个头告诉服务器,缓存数据的时间

- Heferer:浏览器通过这个头告诉服务器,客户及时那个页面来的,防盗链

- Connection:浏览器通过这个头告诉服务器,请求完后是断开链接还是保持链接

- X-Requested-With:XMLHttpRequest 代表通过ajax方式进行访问

- User-Agent:请求载体的身份标识

以上就是浅析Python requests 模块的详细内容,更多关于Python requests 模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python读写Excel文件的实例
Nov 01 Python
python中xrange和range的区别
May 13 Python
Python中的rfind()方法使用详解
May 19 Python
python使用PyGame模块播放声音的方法
May 20 Python
简单易懂的python环境安装教程
Jul 13 Python
一份python入门应该看的学习资料
Apr 11 Python
python中scikit-learn机器代码实例
Aug 05 Python
python如何实现异步调用函数执行
Jul 08 Python
Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DES/AES,RSA和ECC)
May 09 Python
详解Python IO编程
Jul 24 Python
Python基础之变量的相关知识总结
Jun 23 Python
python数字图像处理:图像简单滤波
Jun 28 Python
Python特殊属性property原理及使用方法解析
Oct 09 #Python
python GUI计算器的实现
Oct 09 #Python
Numpy实现卷积神经网络(CNN)的示例
Oct 09 #Python
Python使用socket_TCP实现小文件下载功能
Oct 09 #Python
python实现逻辑回归的示例
Oct 09 #Python
Django生成数据库及添加用户报错解决方案
Oct 09 #Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
Oct 09 #Python
You might like
PHP的面试题集
2006/11/19 PHP
PHP逐行输出(ob_flush与flush的组合)
2012/02/04 PHP
php一个找二层目录的小东东
2012/08/02 PHP
PHP模块memcached使用指南
2014/12/08 PHP
php中简单的对称加密算法实现
2017/01/05 PHP
利用js对象弹出一个层
2008/03/26 Javascript
JS 获取select(多选下拉)中所选值的示例代码
2013/08/02 Javascript
js父窗口关闭时子窗口随之关闭完美解决方案
2014/04/29 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
基于jQuery实现交互体验社会化分享代码附源码下载
2016/01/04 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
Angular2 路由问题修复详解
2017/03/01 Javascript
Vuex之理解Mutations的用法实例
2017/04/19 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
jQuery实现滚动效果
2017/11/17 jQuery
利用babel将es6语法转es5的简单示例
2017/12/01 Javascript
如何优雅地取消 JavaScript 异步任务
2020/03/22 Javascript
node脚手架搭建服务器实现token验证的方法
2021/01/20 Javascript
python实现文件名批量替换和内容替换
2014/03/20 Python
Python爬取读者并制作成PDF
2015/03/10 Python
[原创]python爬虫(入门教程、视频教程)
2018/01/08 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
在python环境下运用kafka对数据进行实时传输的方法
2018/12/27 Python
python实现证件照换底功能
2019/08/20 Python
Python命令行click参数用法解析
2019/12/19 Python
python烟花效果的代码实例
2020/02/25 Python
Python3.6 中的pyinstaller安装和使用教程
2020/03/16 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
2020/03/31 Python
详解pandas.DataFrame.plot() 画图函数
2020/06/14 Python
怎么解决pycharm license Acti的方法
2020/10/28 Python
使用gunicorn部署django项目的问题
2020/12/30 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
Ellos丹麦:时尚和服装在线
2016/09/19 全球购物
html中显示特殊符号(附带特殊字符对应表)
2021/06/21 HTML / CSS