Підкажіть розумний AI парсер?

💡 Усі статті, обговорення, новини про AI — в одному місці. Приєднуйтесь до AI спільноти!

Кейс: мені потрібно, щоб парсер (сервiс або софт) пролапатив каталог вакансій, витягнув їх (заголовки, описи) у табличку, в ідеалі — одразу відфільтрував за заданими мною критеріями? Звичайно, щоб не потрібно було ручками налаштовувати регулярки, селектори тощо

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Сорі, трошки не по темі. Якщо каталог вакансій — це якійсь Job board, то часто є API e.g developer.adzuna.com чи jobdataapi.com, indeed

Если у вас с пайтоном ок,то можно написать что типа такого

 import requests
from bs4 import BeautifulSoup
import pandas as pd

# Настройки
BASE_URL = "https://example.com/jobs"  # URL каталога вакансий
HEADERS = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"}

# Критерии фильтрации
FILTER_KEYWORDS = ["Python", "Удаленная работа", "Junior"]
SALARY_MIN = 500  # Минимальная зарплата (пример)

def fetch_jobs(url):
    """Загружает HTML-контент страницы вакансий."""
    response = requests.get(url, headers=HEADERS)
    if response.status_code == 200:
        return response.text
    else:
        print(f"Ошибка загрузки страницы: {response.status_code}")
        return None

def parse_jobs(html):
    """Парсит вакансии из HTML."""
    soup = BeautifulSoup(html, "html.parser")
    jobs = []
    for job_card in soup.find_all("div", class_="job-card"):  # Указать реальный CSS-селектор
        title = job_card.find("h2", class_="job-title").get_text(strip=True)
        description = job_card.find("p", class_="job-description").get_text(strip=True)
        salary = job_card.find("span", class_="job-salary").get_text(strip=True)
        
        # Фильтрация по ключевым словам
        if any(keyword in title or keyword in description for keyword in FILTER_KEYWORDS):
            jobs.append({
                "Title": title,
                "Description": description,
                "Salary": salary
            })
    return jobs

def save_to_excel(jobs, filename="jobs.xlsx"):
    """Сохраняет вакансии в Excel."""
    df = pd.DataFrame(jobs)
    df.to_excel(filename, index=False)
    print(f"Сохранено в файл: {filename}")

if __name__ == "__main__":
    html = fetch_jobs(BASE_URL)
    if html:
        jobs = parse_jobs(html)
        save_to_excel(jobs)

далее юзаете такое

from astapi import FastAPI

app = FastAPI()

@app.post("/filter_jobs")
def filter_jobs(keywords: list, salary_min: int):
    # Здесь логика фильтрации вакансий
    pass 

Ага і кастомізації на пару днів.

можно еще так Playwright парсит данные с веб-сайта.
Затем данные передаются в Zapier, который автоматически записывает их, например, в Google Sheets или CRM.Zapier позволяет принимать данные через Webhooks. Вот как это можно сделать:

Создайте Webhook в Zapier:

В Zapier создайте новый Zap с триггером Webhook.
Получите URL Webhook, который предоставляется Zapier.
Отправляйте данные из Cypress или Playwright:

Используйте HTTP-запросы для отправки данных в Webhook.
на фронте юзаем ноду и пишим такой код:

const axios = require('axios');

(async () => {
  const data = {
    key1: 'value1',
    key2: 'value2',
  };

  try {
    const response = await axios.post('https://hooks.zapier.com/hooks/catch/XXXX/YYYY', data);
    console.log('Status:', response.status);
  } catch (error) {
    console.error('Error:', error);
  }
})();

Если не хочется заморачиваться то можно заюзать такое ParseHub или Octoparse — визуальные парсеры с поддержкой фильтрации.
Zapier с интеграцией с RSS/Google Sheets.

там вроде также настройка идет, без возможности задать просто запрос (как промтом). Или у них что-то обновилось? Пользовали их?

На 122-ой, делали только с google/ если промпты правильно прописать то и девопос не нужен, все будет тянуть ИИ

тута хлопцы , одной гопотой не обойдеся, есть зайпер там вроде 6500 приложения поддерживается, пожените их и юзайте, с той же гопотой.

хочется максимально просто flow (платный, но простой): ввести ссылочку, ввести промтп (что парсить и как фильтровать) — получить результаты

Підписатись на коментарі