当前位置: 首页 > 编程笔记 >

浅析Python requests 模块

邓建柏
2023-03-14
本文向大家介绍浅析Python requests 模块,包括了浅析Python requests 模块的使用技巧和注意事项,需要的朋友参考一下

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内置模块collections,包括了浅析python内置模块collections的使用技巧和注意事项,需要的朋友参考一下 collections是Python内建的一个集合模块,提供了许多有用的集合类。 1、namedtuple python提供了很多非常好用的基本类型,比如不可变类型tuple,我们可以轻松地用它来表示一个二元向量。 >>> v = (2,3)

  • 本文向大家介绍webpack4.x CommonJS模块化浅析,包括了webpack4.x CommonJS模块化浅析的使用技巧和注意事项,需要的朋友参考一下 先看下webpack官方文档中对模块的描述: 在模块化编程中,开发者将程序分解成离散功能块(discrete chunks of functionality),并称之为模块。 每个模块具有比完整程序更小的接触面,使得校验、调试、测试轻而易举

  • 本文向大家介绍浅析php单例模式,包括了浅析php单例模式的使用技巧和注意事项,需要的朋友参考一下 本系列文章来总结一下设计模式在PHP中的应用,这是第一篇创建型模式之单例模式。 一、设计模式简介 首先我们来认识一下什么是设计模式: 设计模式是一套被反复使用、容易被他人理解的、可靠的代码设计经验的总结。 设计模式不是Java的专利,我们用面向对象的方法在PHP里也能很好的使用23种设计模式。 那么

  • 本文向大家介绍浅析.net策略模式,包括了浅析.net策略模式的使用技巧和注意事项,需要的朋友参考一下 对于策略模式的理解:当一个业务有多种需求时候,在某个时候需要使用不同的方式来计算结果。这时候不同的方式可以理解为不同的策略来解决同样的问题。 例如:商场收银系统计算价格,1:正常计算 2:商品打折计算,3:满300减100等方式。就可以按三种策略来处理需求。 简单的说:策略模式就是用来封装算法的

  • 本文向大家介绍浅析php工厂模式,包括了浅析php工厂模式的使用技巧和注意事项,需要的朋友参考一下 本系列文章来总结一下设计模式在PHP中的应用,这是第二篇创建型模式之工厂模式。 设计模式的一般介绍在第一篇文章讲了,这里就不重复。 工厂模式 实现:定义一个用于创建对象的接口,让子类决定实例化哪一个类。 应用场景:众多子类并且会扩充、创建方法比较复杂。 工厂模式分为三种:简单工厂、工厂方法、抽象工厂

  • 本文向大家介绍深入浅析Nodejs的Http模块,包括了深入浅析Nodejs的Http模块的使用技巧和注意事项,需要的朋友参考一下 一、http服务器     我们知道传统的HTTP服务器是由Aphche、Nginx、IIS之类的软件来搭建的,但是Nodejs并不需要,Nodejs提供了http模块,自身就可以用来构建服务器,例如: http模块中封装了一个HTTP服务器和一个简易的HTTP客户端