当前位置:首页>python>超详细爬虫 python 小白入门讲解(新手必看)

超详细爬虫 python 小白入门讲解(新手必看)

  • 2026-10-11 05:38:07
超详细爬虫 python 小白入门讲解(新手必看)

🔸爬虫是什么?

爬虫的核心逻辑其实并不难:它本质上是一套自动获取、解析和整理网页公开数据的程序流程。

小白可以这样理解:   
我们平时看到的网页,背后其实都是由页面代码生成的。比如我们跨境常见的亚马逊网页会有标题、价格、图片、链接等等内容组成;
而 Python 爬虫要做的是读取这个网页内容,再找到我们想要的信息,最后通过程序自动提取出来。
比如你要的是亚马逊多个竞品的价格,人工操作就是一个一个点击记录下来,但用python 技术就可以批量一次性自动拿到多个竞品价格。

python通常会用来:

  • 收集公开商品名称和价格;
  • 整理新闻标题和发布时间;
  • 获取公开文章链接;
  • 汇总不同页面中的公开数据;
  • 定期检查网页内容是否发生变化。
在我们批量抓取页面时,可能需要用到代理IP;
  1. 抓取需要频繁访问平台,同一个 IP 请求次数太多,容易被平台限制;
  2. 抓取不同国家或地区的页面,需要使用对应地区的 IP;
  3. 不同的抓取项目,最好分开使用不同的网络环境,避免互相影响。

你是新手的话,可以先买少量做测试,我用的是这个:

https://www.kookeey.com/clientarea/#/user/register?aff=30927569

新手直接领取免费的流量包,买它的一元大礼包然后再下单,更划算👇。

扫码免费领取代理IP流量包

🔸Python 爬虫是如何工作的?

一个完整的基础爬虫,通常包含四个核心环节。

1. 请求网页

程序向目标网址发送 HTTP 请求,获取服务器返回的网页内容。

2. 解析页面

大多数网页由 HTML 标签构成。程序需要读取这些标签,理解页面的结构。

3. 提取数据

根据标签名称、class 属性或 CSS 选择器,找到标题、价格、链接等目标信息。

4. 保存数据

把提取后的数据保存到 CSV、Excel、JSON 或数据库中,方便后续分析和使用。

整个流程可以概括为:

发送请求 → 获取 HTML → 解析页面 → 提取数据 → 保存结果

🔸Python 爬虫常用工具

Python 中与爬虫相关的工具很多,但刚入门时不需要全部学习。

常见工具:

1. Requests

Requests 负责向网站发送 HTTP 请求,并接收服务器返回的数据。

简单来说,它解决的是:

Python 怎么访问一个网页?

2. BeautifulSoup

BeautifulSoup 负责解析 HTML 页面,并从中找到目标标签和数据。

它解决的是:

获取网页源码后,怎么找到需要的内容?

3. Selenium或Playwright

部分网页的数据不是直接写在 HTML 中,而是在浏览器打开后,通过 JavaScript 动态加载出来。

这时可以使用 Selenium 或 Playwright 控制真实浏览器,等待页面渲染后再读取数据。

4. Scrapy

Scrapy 是一个专业的 Python 爬虫框架,内置请求调度、并发、数据管道、失败重试等功能,适合规模较大的采集项目。

这篇文章主要使用 Requests 和 BeautifulSoup。

🔸准备 Python 爬虫环境

要使用python需要确保电脑已经安装 Python。

可以在电脑搜索命令提示符(Win + R)、PowerShell 终端,

在 Windows 电脑中,可以这样打开终端:

命令提示符 / PowerShell:按 Win + R,输入 cmd 或 powershell,再按回车。

Windows Terminal:按 Win + X,然后选择“终端”。

终端输入:

python --version

回车,如果能够正常显示 Python 版本,说明安装成功。

没有安装的进入python官网下载:

https://www.python.org/downloads/windows/?key5sk1=9adb1b81fc698e5d0b45e99d3e5cc92d83e55057&utm_source

点击 Download Python install manager 或最新稳定版本。

接下来安装本次需要使用的两个库:

python -m pip install requests beautifulsoup4
  • requests:负责请求网页;
  • beautifulsoup4:负责解析 HTML。

安装完成后,桌面新建一个 Python 文件,名字随意,例如:book_spider.py

然后我们就可以写代码了。

🔸我们在哪里写 Python 代码?

需要一个专门用来编写代码的工具。

Windows 自带的记事本也能写 Python,但不方便检查代码、运行程序和查看报错。

我常用的是 VS Code 。

直接官网下就好:https://code.visualstudio.com/

VS Code 可以把代码文件、运行终端和报错信息放在同一个页面中。

后面我们需要输入的 Python 代码,都写在 VS Code 的文件编辑区;

安装库和运行文件的命令,则输入在页面下方的终端中。

VS Code 负责“编写代码”,Python 负责“运行代码”,两者并不是同一个软件。

其他 Python 编辑器,例如 PyCharm 或 Python 自带的 IDLE,也可以使用。

🔸下面我们简单实战-抓取网页内容

为了方便练习,这次使用专门供爬虫学习使用的网站:

https://books.toscrape.com/

页面中包含书名、价格、库存状态和详情链接,非常适合作为入门案例。

第一步:向网页发送请求

我们人为查找网页一般是浏览器中输入网址搜索,浏览器展示结果。

在python里也一样,输入代码让 Python 帮我们访问。

打开VS code 写入下面的代码:

import requestsfrom bs4 import BeautifulSoupurl = "https://books.toscrape.com/"response = requests.get(url, timeout=15)response.raise_for_status()soup = BeautifulSoup(response.text, "html.parser")print("网页标题:", soup.title.get_text(strip=True))

在下方的终端输入:

python book_spider.py

回车,正常情况下会输出:

All products | Books to Scrape - Sandbox

这说明程序已经成功获取并解析了网页。

这里简单理解两个关键内容就可以:

  • requests.get():负责访问网页;
  • BeautifulSoup():负责解析返回的 HTML 页面。

这一段完成后,就可以开始从网页中寻找书名、价格和链接了。

上面这些代码如果看不懂直接发给AI,让他解释每行的作用,你就大概能理解了

我们需要先在我们要爬取的页面找到源码,

打开目标网页,右键选择“检查”,或者按下 F12,进入开发者工具就能看到网页的 HTML 结构。

然后利用BeautifulSoup 库对HTML进行解析,提取我们想要的内容👇

🔸提取书名、价格和详情链接

完整代码如下:

import requestsfrom bs4 import BeautifulSoupfrom urllib.parse import urljoinurl = "https://books.toscrape.com/"response = requests.get(url, timeout=15)response.raise_for_status()soup = BeautifulSoup(response.text, "html.parser")books = []for item in soup.select("article.product_pod"):    title_element = item.select_one("h3 a")    price_element = item.select_one(".price_color")    if title_element is None or price_element is None:        continue    title = title_element.get("title", "").strip()    price = price_element.get_text(strip=True)    relative_link = title_element.get("href", "")    link = urljoin(url, relative_link)    books.append({        "书名": title,        "价格": price,        "链接": link    })for book in books:    print(book)

运行后,控制台会依次输出当前页面中的书名、价格和链接。

例如:

{'书名': 'A Light in the Attic', '价格': '£51.77', '链接': 'https://books.toscrape.com/catalogue/...'}

到这里,我们已经成功从网页中提取出了书名、价格和详情链接。

不过,数据目前只显示在控制台里,一旦关闭窗口就不方便查看。所以下一步,我们把这些内容保存为 CSV 文件到本地文件中。

CSV 文件可以直接用 Excel 打开,很适合刚开始练习数据采集的小白。

在前面的代码后面加入:

import csvwith open("books.csv", "w", newline="", encoding="utf-8-sig") as file:    writer = csv.DictWriter(        file,        fieldnames=["书名", "价格", "链接"]    )    writer.writeheader()    writer.writerows(books)print(f"抓取完成,共保存 {len(books)} 条数据")

再次运行:

python book_spider.py

运行完成后,在 book_spider.py 所在的文件夹中,会生成一个名为:“books.csv”的文件。

用 Excel 打开后,就能看到整理好的书名、价格和详情链接。

我们这次练习的是静态网页,书名、价格等数据已经包含在返回的 HTML 中,所以使用 Requests 和 BeautifulSoup 可以直接提取。     
但有些网页的数据需要打开页面后,再通过JavaScript 加载。这类页面通常需要进一步分析网页接口,或者使用 Selenium、Playwright 等浏览器自动化工具。     

作为刚入门的小白,先把静态网页的抓取流程跑通就可以了。

🔸什么时候会使用代理IP?

如果是批量采集、跨地区访问,会使用到 动态住宅代理,根据目标网站选择对应地区的线路,轮换请求 IP。

代理线路一般长这样:user123:pass456@203.0.113.25:8000

  • user123:代理用户名;
  • pass456:代理密码;
  • 203.0.113.25:代理地址;
  • 8000:代理端口。

在 Requests 中,可以这样配置:

proxies = {    "http": "http://user123:pass456@203.0.113.25:8000",    "https": "http://user123:pass456@203.0.113.25:8000"}response = requests.get(    url,    proxies=proxies,    timeout=15)

代理 IP 是帮助我们调整网络出口,并不能解决所有抓取问题。实际操作时,还是要控制请求频率。

新手试用直接领取

扫码免费领取代理IP流量包

◆ 运行时常见的问题

- 提示没有安装 requests 或 bs4

重新打开终端,输入:

python -m pip install requests beautifulsoup4

- 返回 403 或 429

403 一般表示服务器拒绝访问,429 则说明短时间内请求次数过多。

遇到这种情况,不要连续重复运行,可以先降低请求频率,稍等一段时间后再尝试。

- 程序运行了,却没有抓到数据

一般是网页结构发生了变化,原来的标签位置已经不准确。

可以重新打开开发者工具,检查书名、价格所在的 HTML 标签,再调整代码中的选择器。

完成这次简单实操后,我们已经跑通了一个完整流程:

使用 Requests 获取网页,使用 BeautifulSoup 解析页面,提取书名和价格,最后保存到 CSV 文件。

对于刚入门的人来说,先把这套基础流程真正运行成功,比急着学习 Selenium、Scrapy 或复杂反爬更重要。

等能够独立完成一个简单爬虫后,再继续学习翻页、动态网页、接口分析和数据库,整个学习过程会清晰很多。

点关注👇,持续了解更多出海知识

最新文章

随机文章