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

相关推荐
我需要一个支点1 小时前
douyin无水印视频下载
爬虫·python
喵手1 小时前
Python爬虫实战:采集各大会展平台的展会名称、举办时间、展馆地点、主办方、行业分类等结构化数据(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集大会展平台信息·展会名称举办时间展馆地址·采集数据csv/json导出
0思必得02 小时前
[Web自动化] Selenium执行JavaScript语句
前端·javascript·爬虫·python·selenium·自动化
0思必得02 小时前
[Web自动化] Selenium截图
前端·爬虫·python·selenium·自动化
feasibility.2 小时前
playwright爬虫采集京东商品主页数据(含xpath定位示例)
爬虫·playwright
喵手4 小时前
Python爬虫实战:博物馆官网的“展览预告/正在热展”栏目,抓取展览名称、精确展期、具体展厅位置以及票务/预约规则(附CSV导出)!
爬虫·python·爬虫实战·零基础python爬虫教学·博物馆信息采集·采集展览预告/正在热展等·采集数据csv导出
喵手4 小时前
Python爬虫实战:电商实体消歧完整实战 - 从混乱店铺名到标准化知识库的工程化实现,一文带你搞定!
爬虫·python·算法·爬虫实战·零基础python爬虫教学·同名实体消除·从混乱店铺名到标准化知识库
小白学大数据4 小时前
实测数据:多进程、多线程、异步协程爬虫速度对比
开发语言·爬虫·python·php
袖清暮雨6 小时前
Python爬虫(Scrapy框架)
开发语言·爬虫·python·scrapy
喵手6 小时前
Python爬虫实战:采集双色球(SSQ)历史开奖数据(期号、红球、蓝球、开奖日期)等信息,并进行结构化CSV存储(Requests + Pandas)!
爬虫·python·爬虫实战·零基础python爬虫教学·双色球历史开奖数据·期号红球篮球开奖日期等·结构化csv存储