You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python爬虫如何添加循环实现网站多分页内容批量抓取

改造方案

完全保留原有页面解析、链接提取、结果存储的核心逻辑,仅在外层新增分页遍历能力,没有改动任何原有爬取规则:

  • 拆分固定URL前缀,遍历页码时自动拼接对应数字生成分页地址
  • 新增基础请求容错,单页/单个链接访问失败不会直接中断整个爬取任务
  • 修复原代码索引遍历的越界隐患:原逻辑会跳过第一条链接、且遍历到最后一条时会触发索引超出范围的报错
  • 支持自定义分页爬取范围,可按需调整起止页码
改造后可直接运行的代码
from bs4 import BeautifulSoup
import requests
import re
import urllib.request
from urllib.request import Request, urlopen

# 基础URL配置,填写不带分页数字的固定前缀
BASE_URL = "domain.com/"
# 配置要爬取的分页起止范围,按需修改即可
PAGE_START = 1
PAGE_END = 10

# 遍历所有分页执行原有爬取逻辑
for page_num in range(PAGE_START, PAGE_END + 1):
    # 生成分页URL,第一页默认不带数字后缀
    if page_num == 1:
        current_url = BASE_URL
    else:
        current_url = f"{BASE_URL}{page_num}"
    
    print(f"正在爬取分页: {current_url}")
    # 分页请求容错
    try:
        page = requests.get(current_url, timeout=10)
        page.raise_for_status()
    except Exception as e:
        print(f"分页{page_num}访问失败,自动跳过: {str(e)}")
        continue

    soup = BeautifulSoup(page.content, "html.parser")

    # 以下为原有爬取逻辑,未做任何规则修改
    endof = soup.find_all('div',class_="th-image")
    links = [a['href'] for a in soup.find_all('a', href=True)]
    endoflinks = links[8:-8]

    # 修复原代码索引越界问题,遍历逻辑和原规则一致
    for link in endoflinks:
        # 兼容相对路径、绝对路径两种链接格式
        if link.startswith("http"):
            dwnlink = link
        else:
            dwnlink = "domain.com" + link

        try:
            r = requests.get(dwnlink, timeout=10)
            # 追加写入结果文件,和原写入逻辑一致
            with open("output.txt", "a", encoding="utf-8") as f:
                f.write(r.url + "\n")
        except Exception as e:
            print(f"链接{dwnlink}访问失败,自动跳过: {str(e)}")
            continue
配置说明
  • 修改PAGE_START、PAGE_END参数即可指定爬取的页码范围,例如设置为1到20就会依次访问拼接了1、2...20的分页地址
  • 如果你爬取的站点第一页URL也需要带数字后缀(例如domain.com/1),删除代码中判断page_num == 1的分支,统一使用current_url = f"{BASE_URL}{page_num}"生成地址即可
  • 原代码中链接切片links[8:-8]、th-imagediv提取规则完全保留,和之前的爬取匹配规则完全一致
  • 新增的超时、异常捕获仅用于规避网络波动导致的脚本崩溃,不影响核心爬取结果

内容的提问来源于stack exchange,提问作者Tab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 05:27:21