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

Список функций
- Интеллектуальное извлечение данных: Анализ веб-контента с помощью моделей искусственного интеллекта, таких как 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"
- Linux/Mac:
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 и т. д.).
Функциональное управление
- Переключение инструментов кроулера
По умолчанию используется Playwright, если вы хотите использовать Selenium, вы можете добавить параметры:par_scrape --url "https://example.com" -f "Title" --scraper selenium
- параллельный захват
Установите максимальное количество параллельных запросов для повышения эффективности:par_scrape --url "https://example.com" -f "Data" --scrape-max-parallel 5
- Динамическое ожидание страницы
Для динамически загружаемого содержимого можно установить типы ожидания и селекторы:par_scrape --url "https://example.com" -f "Content" --wait-type selector --wait-selector ".dynamic-content"
Поддерживаемые типы ожидания включают
none
, иpause
, иsleep
, иidle
, иselector
ответить пениемtext
. - Пользовательский выходной тракт
Сохраняет результаты в указанную папку:par_scrape --url "https://example.com" -f "Title" --output-folder ./my_data
Детали процесса эксплуатации
Возьмем, к примеру, страницу с ценами на ползание:
- постановка целей: Перейдите на сайт https://openai.com/api/pricing/ и подтвердите, что вам нужно извлечь "Модель", "Входные данные ценообразования" и " Pricing Output".
- Выполнить команду::
par_scrape --url "https://openai.com/api/pricing/" -f "Model" -f "Pricing Input" -f "Pricing Output" --model gpt-4o-mini --display-output json
- Посмотреть результаты: После выполнения команды терминал отображает данные в формате JSON или сохраняет их в выходной файл по умолчанию.
- Параметры настройки: Если данные неполные, попробуйте добавить
--retries 5
(количество повторных попыток) или настройки--sleep-time 5
(Время ожидания).
предостережение
- Ключ API: Убедитесь, что ключ действителен, иначе функция извлечения AI будет недоступна.
- Ограничения на сайте: На некоторых сайтах может быть установлен механизм, препятствующий заползанию, поэтому рекомендуется использовать
--headless
(режим без головы) или для настройки частоты захвата. - Использование кэша: Если вы многократно просматриваете одну и ту же страницу, вы можете включить функцию
--prompt-cache
Сокращение расходов.
Выполнив описанные выше действия, пользователи смогут быстро приступить к работе с par_scrape и легко выполнять задачи по извлечению данных с веб-страниц.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...