爬虫中request模块

一、基本使用

1、导入模块

复制代码
import requests

2、指定URL

复制代码
url = "https://httpbin.org/id"

3、发送请求

  • 使用requests.get(url)发送GET请求。
  • 使用requests.post(url, data=data, headers=headers)发送POST请求,其中data是请求体中的数据,headers是请求头信息。

4、 获取响应:

  • 响应对象包含了服务器返回的所有信息,如状态码、响应内容等。
  • 示例代码:response = requests.get(url)

5、解析响应:

  • 通过response.text获取响应内容的字符串形式。
  • 通过response.content获取响应内容的二进制形式。
  • 通过response.status_code获取HTTP状态码,如200表示成功。
  • 通过response.headers获取响应头信息。

6、持久化存储(可选):将爬取的数据保存到文件或数据库中。

二、HTTP请求类型

  • GET:用于请求访问已被URI(统一资源标识符)识别的资源。
  • POST:用于提交表单数据或上传文件。
  • HEAD:类似于GET请求,但服务器在响应中只返回首部,不返回实体的主体部分。
  • PUT:用于上传文件,更新资源等。
  • DELETE:请求服务器删除指定的页面。
  • OPTIONS:允许客户端查看服务器的性能。
  • PATCH:用于对资源进行部分修改。
  • CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
  • TRACE:回显服务器收到的请求,主要用于测试或诊断。

三、请求头(Headers)

在发送HTTP请求时,通常需要设置请求头以模拟浏览器行为或传递额外信息。常见的请求头包括:

  • User-Agent:客户端标识,告诉服务器客户端使用的操作系统、浏览器等信息。
  • Accept:指定客户端能够接收的内容类型。
  • Accept-Encoding:指定客户端支持的内容编码类型。
  • Accept-Language:指定客户端优先使用的语言。
  • Connection:指定客户端是否希望保持连接。
  • Cookie:用于在HTTP请求中传递会话信息。

四、注意:

1、get 传递数据需要使用params

2、connection:指定客户端是否希望保持连接

3、cookie 用于在HTTP请求中传递会话信息

4、post 传递数据使用data传值

5、'w' 模式表示"写入模式"

6、'wb' 二进制格式写入文件

7、Cookie在爬虫中的作用不可小觑。它不仅能够帮助爬虫维持会话状态、提高爬取效率,还能够增强爬虫的适应性,甚至帮助爬虫绕过一些网站的反爬机制。

相关推荐
0思必得04 小时前
[Web自动化] 反爬虫
前端·爬虫·python·selenium·自动化
喵手4 小时前
Python爬虫实战:从零搭建字体库爬虫 - requests+lxml 实战采集字体网字体信息数据(附 CSV 导出)!
爬虫·python·爬虫实战·零基础python爬虫教学·csv导出·采集字体库数据·字体库字体信息采集
喵手6 小时前
Python爬虫实战:GovDataMiner —— 开放数据门户数据集元数据采集器(附 CSV 导出)!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·open data·开放数据门户数据集列表
喵手14 小时前
Python爬虫实战:把“菜鸟教程”的知识树连根拔起(递归/遍历实战)(附 CSV 导出)!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·菜鸟教程数据采集·采集菜鸟教程于csv
0思必得019 小时前
[Web自动化] 数据抓取、解析与存储
运维·前端·爬虫·selenium·自动化·web自动化
喵手1 天前
Python爬虫零基础入门【第九章:实战项目教学·第15节】搜索页采集:关键词队列 + 结果去重 + 反爬友好策略!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·搜索页采集·关键词队列
喵手1 天前
Python爬虫零基础入门【第九章:实战项目教学·第14节】表格型页面采集:多列、多行、跨页(通用表格解析)!
爬虫·python·python爬虫实战·python爬虫工程化实战·python爬虫零基础入门·表格型页面采集·通用表格解析
0思必得01 天前
[Web自动化] 爬虫之API请求
前端·爬虫·python·selenium·自动化
喵手1 天前
Python爬虫实战:从零构建 Hacker News 数据采集系统:API vs 爬虫的技术抉择!(附CSV导出 + SQLite 存储)!
爬虫·python·爬虫实战·hacker news·python爬虫工程化实战·零基础python爬虫教学·csv导出
0思必得01 天前
[Web自动化] 爬虫之网络请求
前端·爬虫·python·selenium·自动化·web自动化