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

相关推荐
用户8356290780511 分钟前
使用 Python 在 Excel 中添加和编辑形状
后端·python
2601_9623004714 分钟前
python在运维上可以干什么,请举几个具体的例子
运维·python·系统管理·网络监控·自动化脚本
小刘在重生~27 分钟前
Java 异常体系完整笔记
java·笔记·python
用户83562907805129 分钟前
使用 Python 为 PDF 添加和管理超链接
后端·python
千千寰宇30 分钟前
[Python/测试] pytest:简洁、可扩展的 Python 测试框架
python·软件质量保障与测试
少陽君32 分钟前
Python 并发编程:IO 等待用线程/asyncio,CPU 计算才用进程
数据库·python·php
2601_962284501 小时前
Python 和Java 哪个更适合做自动化测试?
java·自动化测试·python·接口测试·性能测试
liliangcsdn1 小时前
因子权重矩阵处理-滞回缓冲带+降频稳定化动态重选
开发语言·python·算法
泡泡鱼(敲代码中)1 小时前
Python语法技术学习笔记
开发语言·笔记·python·学习·pycharm
CTA终结者1 小时前
量化实现难,先看交易想法有没有说清
人工智能·python