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多平台发布

相关推荐
zzc92110 分钟前
无线通信网络拓扑推理采样率实验(数据生成)
python·matlab·拓扑·无线通信网络拓扑推理·wcna·tpi
lilybaobei40 分钟前
Tensorflow安装出现dependency conflict错误
python·tensorflow
荣58244 分钟前
python打卡day29
python
mwicogito1 小时前
实验复现:应用 RIR 触发器的 TrojanRoom 后门攻击实现
人工智能·python·机器学习·语音识别·后门攻击
灏瀚星空2 小时前
高频交易技术:订单簿分析与低延迟架构——从Level 2数据挖掘到FPGA硬件加速的全链路解决方案
人工智能·python·算法·信息可视化·fpga开发·架构·数据挖掘
Hello.Reader2 小时前
在多云环境透析连接ngx_stream_proxy_protocol_vendor_module
后端·python·flask
zh_199953 小时前
Spark面试精讲(上)
java·大数据·数据仓库·python·spark·数据库开发·数据库架构
没有钱的钱仔3 小时前
python文件传输 带进度条
服务器·网络·python
Python当打之年4 小时前
【62 Pandas+Pyecharts | 智联招聘大数据岗位数据分析可视化】
大数据·python·数据分析·pandas·数据可视化
好易学·数据结构4 小时前
可视化图解算法51:寻找第K大(数组中的第K个最大的元素)
数据结构·python·算法·leetcode·力扣·牛客网·堆栈