par_scrape: краулер для интеллектуального извлечения веб-данных

Общее введение

par_scrape - это веб-краулер с открытым исходным кодом на базе Python, запущенный на GitHub разработчиком Полом Робелло, призванный помочь пользователям интеллектуально извлекать данные с веб-страниц. Он объединяет две мощные технологии автоматизации браузера, Selenium и Playwright, и сочетает их с возможностями искусственного интеллекта для поддержки извлечения данных с простых статических страниц и сложных динамических веб-сайтов. Будь то извлечение цен, названий или другой структурированной информации, par_scrape быстро справляется с задачей, указывая поля, и выводит результаты в формате Markdown, JSON или CSV. Проект для разработчиков, аналитиков данных или пользователей, которые хотят автоматизировать сбор информации в Сети, прост в установке и обладает гибкими возможностями, популярен в сообществе разработчиков с открытым исходным кодом.

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

 

Список функций

  • Интеллектуальное извлечение данных: Анализ веб-контента с помощью моделей искусственного интеллекта, таких как OpenAI или Anthropic, для точного извлечения заданных пользователем полей.
  • Двойная гусеничная поддержкаСайт поддерживает технологии Selenium и Playwright, которые могут быть адаптированы к различным архитектурам сайтов.
  • Несколько форматов выводаРезультаты захвата могут быть экспортированы в Markdown, JSON, CSV или Excel для упрощения последующей обработки.
  • Захват пользовательских полей: Пользователи могут указать поля для извлечения, такие как название, описание, цена и т. д., чтобы удовлетворить индивидуальные потребности.
  • параллельный захват: Поддержка многопоточного поиска для повышения эффективности сбора больших объемов данных.
  • Механизм ожидания: Обеспечьте различные методы ожидания загрузки страниц (например, пауза, ожидание селектора), чтобы обеспечить успешное воспроизведение динамического контента.
  • Выбор модели искусственного интеллектаПоддержка нескольких поставщиков ИИ (например, OpenAI, Anthropic, XAI) для гибкой адаптации к различным задачам.
  • Оптимизация кэша: Встроенная функция кэширования подсказок для снижения стоимости повторных запросов и повышения эффективности.

 

Использование помощи

Процесс установки

Чтобы использовать par_scrape, вам необходимо выполнить следующие шаги по установке, чтобы убедиться, что ваша среда хорошо подготовлена. Ниже приведено подробное руководство по установке:

1. Подготовка окружающей среды

  • Версия Python: Убедитесь, что в вашей системе установлен Python 3.11 или более поздней версии, с помощью команды python --version Проверьте.
  • Инструменты Git: Используется для клонирования кода с GitHub, если он не установлен, доступ к нему можно получить через sudo apt install git(Linux) или на официальном сайте для загрузки и установки.
  • УФ-инструменты: Рекомендуется использовать UV для управления зависимостями, команда установки следующая:
    • Linux/Mac:curl -LsSf https://astral.sh/uv/install.sh | sh
    • Окна: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 в качестве краулера, вам нужно будет дополнительно установить и настроить браузер:

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: Выберите модель ИИ (например, 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"
    

    Поддерживаемые типы ожидания включают none, иpause, иsleep, иidle, иselector ответить пением text.

  4. Пользовательский выходной тракт
    Сохраняет результаты в указанную папку:

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

Детали процесса эксплуатации

Возьмем, к примеру, страницу с ценами на ползание:

  1. постановка целей: Перейдите на сайт https://openai.com/api/pricing/ и подтвердите, что вам нужно извлечь "Модель", "Входные данные ценообразования" и " 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 и легко выполнять задачи по извлечению данных с веб-страниц.

© заявление об авторских правах

Похожие статьи

Amurex:开源AI会议记录助手,自动记录会议内容生成总结

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...