AI个人学习
和实操指南
讯飞绘镜

par_scrape:智能提取网页数据的爬虫工具

综合介绍

par_scrape 是一个基于 Python 的开源网页爬虫工具,由开发者 Paul Robello 在 GitHub 上推出,旨在帮助用户从网页中智能提取数据。它整合了 Selenium 和 Playwright 两种强大的浏览器自动化技术,并结合 AI 处理能力,支持从简单静态页面到复杂动态网站的数据抓取。无论是提取价格、标题还是其他结构化信息,par_scrape 都能通过指定字段快速完成任务,并将结果输出为 Markdown、JSON 或 CSV 等格式。项目适用于开发者、数据分析师或希望自动化收集网络信息的用户,安装简单且功能灵活,深受开源社区欢迎。

par_scrape:智能提取网页数据的爬虫工具-1


 

功能列表

  • 智能数据提取:通过 AI 模型(如 OpenAI 或 Anthropic)分析网页内容,精准提取用户指定的字段。
  • 双重爬虫支持:支持 Selenium 和 Playwright 两种技术,适应不同网站架构需求。
  • 多种输出格式:抓取结果可输出为 Markdown、JSON、CSV 或 Excel,方便后续处理。
  • 自定义字段抓取:用户可指定提取的字段,如标题、描述、价格等,满足个性化需求。
  • 并行抓取:支持多线程抓取,提升大规模数据采集效率。
  • 等待机制:提供多种页面加载等待方式(如暂停、选择器等待),确保动态内容抓取成功。
  • AI 模型选择:支持多种 AI 提供者(如 OpenAI、Anthropic、XAI),灵活适配不同任务。
  • 缓存优化:内置提示缓存功能,减少重复请求成本,提高效率。

 

使用帮助

安装流程

要使用 par_scrape,需要先完成以下安装步骤,确保环境准备充分。以下是详细的安装指南:

1. 环境准备

  • Python 版本:确保系统已安装 Python 3.11 或以上版本,可通过命令 python --version 检查。
  • Git 工具:用于从 GitHub 克隆代码,若未安装,可通过 sudo apt install git(Linux)或官网下载安装。
  • UV 工具:推荐使用 UV 管理依赖,安装命令为:
    • Linux/Mac:curl -LsSf https://astral.sh/uv/install.sh | sh
    • Windows:powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

2. 克隆项目

在终端输入以下命令,将 par_scrape 项目克隆到本地:

git clone https://github.com/paulrobello/par_scrape.git  
cd par_scrape

3. 安装依赖

使用 UV 安装项目依赖:

uv sync

或者直接从 PyPI 安装:

uv tool install par_scrape  
# 或使用 pipx  
pipx install par_scrape

4. 安装 Playwright(可选)

若选择 Playwright 作为爬虫工具,需额外安装并配置浏览器:

uv tool install playwright  
playwright install chromium

5. 配置 API 密钥

par_scrape 支持多种 AI 提供者,需在环境变量中配置对应密钥。编辑 ~/.par_scrape.env 文件,添加以下内容(根据需求选择):

OPENAI_API_KEY=your_openai_key  
ANTHROPIC_API_KEY=your_anthropic_key  
XAI_API_KEY=your_xai_key

或者在运行命令前设置环境变量:

export OPENAI_API_KEY=your_openai_key

使用方法

安装完成后即可通过命令行运行 par_scrape,以下是详细操作流程:

基本使用示例

假设要从 OpenAI 定价页面提取标题、描述和价格:

par_scrape --url "https://openai.com/api/pricing/" -f "Title" -f "Description" -f "Price" --model gpt-4o-mini --display-output md
  • --url:目标网页地址。
  • -f:指定提取字段,可多次使用。
  • --model:选择 AI 模型(如 gpt-4o-mini)。
  • --display-output:输出格式(md、json、csv 等)。

特色功能操作

  1. 切换爬虫工具
    默认使用 Playwright,若需使用 Selenium,可添加参数:

    par_scrape --url "https://example.com" -f "Title" --scraper selenium
    
  2. 并行抓取
    设置最大并行请求数,提升效率:

    par_scrape --url "https://example.com" -f "Data" --scrape-max-parallel 5
    
  3. 动态页面等待
    对于动态加载内容,可设置等待类型和选择器:

    par_scrape --url "https://example.com" -f "Content" --wait-type selector --wait-selector ".dynamic-content"
    

    支持的等待类型包括 nonepausesleepidleselector 和 text

  4. 自定义输出路径
    将结果保存到指定文件夹:

    par_scrape --url "https://example.com" -f "Title" --output-folder ./my_data
    

操作流程详解

以抓取定价页面为例:

  1. 确定目标:访问 https://openai.com/api/pricing/,确认需要提取 “Model”、“Pricing Input” 和 “Pricing Output”。
  2. 运行命令
    par_scrape --url "https://openai.com/api/pricing/" -f "Model" -f "Pricing Input" -f "Pricing Output" --model gpt-4o-mini --display-output json
    
  3. 查看结果:命令执行后,终端显示 JSON 格式数据,或保存至默认输出文件。
  4. 调整参数:若数据不完整,可尝试增加 --retries 5(重试次数)或调整 --sleep-time 5(等待时间)。

注意事项

  • API 密钥:确保密钥有效,否则 AI 提取功能不可用。
  • 网站限制:某些网站可能有反爬机制,建议使用 --headless(无头模式)或调整抓取频率。
  • 缓存使用:若多次抓取同一页面,可启用 --prompt-cache 减少成本。

通过以上步骤,用户可快速上手 par_scrape,轻松完成网页数据提取任务。

CDN1
未经允许不得转载:首席AI分享圈 » par_scrape:智能提取网页数据的爬虫工具

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文