Python网络数据抓取(3):Requests

引言

在这一部分,我们将探讨Python的requests库,并且利用这个库来进行网页数据抓取。那么,我们为何需要这个库,以及怎样利用它呢?

requests库是广受大家欢迎的一个库,它是下载次数最多的。这个库使我们能够向各种网站发起HTTP请求。它向目标网站发起一个套接字连接,并请求连接的权限。这就是不同应用程序之间如何实现通信的原理。

接下来,我们通过一个简单的网页抓取实例来说明如何应用这个库。

示例

以亚马逊网站为例,我们将进行数据抓取。

sh 复制代码
mkdir scraper
pip install requests

然后在这个文件夹中创建一个文件 scraper.py 然后开始和我一起编码。

python 复制代码
import requests

这会将请求库导入到我们的文件中。现在,我们可以使用它来创建网络抓取工具。

python 复制代码
target_url = "https://www.amazon.com/dp/B08WVVBWCN"

headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36"}

resp = requests.get(url, headers=headers).text

print(resp.status_code)

在这里,我们声明了一个 target_url 变量,用于存储来自 amazon.com 的目标网址。然后我们声明了一个标头,最后我们向目标 URL 发出了 GET 请求。这就是我们运行这段代码时发生的情况。

当我们打印状态时,我们得到的状态为 200,这意味着我们能够成功抓取亚马逊。您甚至可以打印我们从亚马逊收到的 HTML 代码,只需将 status_code 替换为文本即可。

它看起来像这样:

正如您所看到的,这些数据根本不可读。我们需要从这些垃圾中解析出数据。为此,我们将使用 BeautifulSoup。

未完待续,欢迎关注!

本文由mdnice多平台发布

相关推荐
xiaopengbc9 小时前
在 Python 中实现观察者模式的具体步骤是什么?
开发语言·python·观察者模式
Python大数据分析@9 小时前
python用selenium怎么规避检测?
开发语言·python·selenium·网络爬虫
ThreeAu.9 小时前
Miniconda3搭建Selenium的python虚拟环境全攻略
开发语言·python·selenium·minicoda·python环境配置
偷心伊普西隆10 小时前
Python EXCEL 理论探究:格式转换时处理缺失值方法
python·excel
精灵vector10 小时前
LLMCompiler:基于LangGraph的并行化Agent架构高效实现
人工智能·python·langchain
java1234_小锋11 小时前
Scikit-learn Python机器学习 - 特征降维 压缩数据 - 特征选择 - 移除低方差特征(VarianceThreshold)
python·机器学习·scikit-learn
万邦科技Lafite11 小时前
实战演练:通过API获取商品详情并展示
大数据·数据库·python·开放api接口
愈努力俞幸运11 小时前
uv教程 虚拟环境
python·uv