🔍 Чекер доменов для PBN через n8n + Wayback Machine

🔍 Чекер доменов для PBN через n8n + Wayback Machine

Anton DofollowLab

В этом посте покажу, как я собрал полностью автоматический чекер доменов для PBN, который:

  • Берёт список доменов из Google Sheets
  • Проверяет, есть ли у домена сохранённые снимки в Web Archive (Wayback Machine)
  • Анализирует HTML последнего снапшота
  • Возвращает метрики и теги прямо в таблицу

1️⃣ Исходные данные которые нам нужны

Нам нужна таблица Google Sheet в которой есть:

  • id
  • Domain
  • Status - wait

Остальные колонки в таблице должны быть пустыми, но с заголовками. Вот список всех колонок, которые должны быть в таблице:
id
Domain
status
SnapshotURL
LastTimestamp
SnapshotsCount
FirstYear
LastYear
AgeYears
SnapshotStatus
Title
OutLinks
Spam
IndexOfPage
BrandMatch
Lang
Score

Вот шаблон таблицы для использования - https://docs.google.com/spreadsheets/d/1UWGhc_sUmtsR2Gdt_awptMs4U0Z4yUgDI009JhIjsyo/edit?usp=sharing (копируем ее себе, вставляем свои домены на проверку и понеслась!)

2️⃣ Логика работы

  1. Loop Over Items — перебираем все строки таблицы по одной.
  2. Edit Fields — приводим данные в удобный вид.
  3. Code #0 — формируем URL для API Wayback Machine
  4. HTTP Request #1 — получаем JSON с историей снимков.
  5. Code #1 — парсим JSON, находим последний HTML-снимок, считаем метрики.
  6. IF — если hasSnapshot = true, идём в ветку парсинга HTML.
  7. HTTP Request #2 — грузим HTML снапшота.
  8. Code #3 — парсим HTML и определяем -Title, OutLinks, Spam, IndexOfPage, BrandMatch, Lang, Score
  9. Записываем результат в Google Sheet (все параметры в одной строке).


3️⃣ Детально по метрикам, что и зачем и почему?

🏷️ Title

Что это: <title> из HTML-снапшота.

Как считаем: вытаскиваем регуляркой <title>…</title>, чистим пробелы.

На что смотрим:

  • Нормально: бренд/тема сайта, осмысленная фраза.
  • Красные флаги: «Index of /», «Directory listing», мусор из ключей («casino, poker…»), пусто.

Влияние на Score: косвенно (см. IndexOfPage, BrandMatch, Lang, Spam).


Что это: количество ссылок вида <a … href=…> в HTML.

Как считаем: простым подсчётом в тексте HTML (без JS-рендера).

Ориентиры:

  • 0–80 — обычно ОК (не каталог, не «линкопомойка») → +10 баллов.
  • 81–150 — нейтрально.
  • >150 — часто каталоги/директории/спам → −15 баллов.
⚠️ Ограничение: очень «тяжёлые» страницы, лендинги-каталоги, страниц-архивы могут давать много ссылок естественно — смотрим в связке с Title/IndexOfPage.

🚫 Spam

Что это: грубый фильтр на спам-лексему.

Как считаем: ищем ключевые слова в Title и в очищенном тексте страницы

(скрипты/стили/комментарии вырезаем). Список триггеров типа:
casino|bet|poker|viagra|cialis|porn|xxx|adult|loan|payday|essay|forex
1xbet|slot|gambling|crypto\s*scam

Интерпретация:

  • false — чисто → +20 баллов
  • true — спам подозрительный → −30 баллов
Можно (и нужно) расширять словарь под свою нишу.

📂 IndexOfPage

Что это: признак «директории»/листинга файлов.

Как считаем: проверяем Title и текст на паттерны: "Index of /", "Directory listing", "Parent Directory"

Интерпретация:

  • false — не директория → +5 баллов
  • true — листинг/каталог, чаще бесполезно → 0 (и часто бьёт по OutLinks)

🏷️ BrandMatch

Что это: совпадает ли бренд в контенте с доменом.

Как считаем:

  1. Бренд = первая часть домена без www и зоны:
  2. wwwepaf.org.uk → "wwwepaf"
  3. Ищем в (Title + первые ~500 символов текста)
  4. с допуском дефис/подчёркивание: [-_]?
  5. Пример: my-brandmybrand.

Интерпретация:

  • true — контент нативный, не паразитный → +5 баллов
  • false — возможно, зеркала/склейки/скрап → 0

🌍 Lang

Что это: грубая оценка языка по латинице в Title.

Как считаем: доля [A–Z] в заголовке:

  • >60% — считаем «EN-ish» → +5 баллов
  • иначе — Other
Хочешь точнее — можно добавить определение языка по словарям/библиотекам, но для скоринга «грубая EN/Other» обычно хватает.

📊 Score (итоговый балл)

Что это: сводный скор полезности/чистоты снапшота и истории.

Формула по умолчанию (не претендую на лучшую формулу... можно менять под себя..):

  • Spam=false → +20, Spam=true → −30
  • IndexOfPage=false → +5
  • BrandMatch=true → +5
  • Lang = EN-ish → +5
  • OutLinks ≤ 80 → +10; OutLinks > 150 → −15
  • SnapshotsCount ≥ 20 → +25
  • AgeYears ≥ 5 → +20

Интерпретация (рубрикатор):

  • ≥ 60 — топ-кандидат, глубокая история, чистый и тематичный.
  • 40–59 — рабочий вариант, смотрим руками/более строгие фильтры.
  • 20–39 — риск/серость, лучше пропускать или перепроверять тщательно.
  • < 20 — почти всегда мусор/директории/спам.

4️⃣ Что в итоге получаем

Пример - https://docs.google.com/spreadsheets/d/1L9QyINDnl26sGPqkuiAqvKqYtsnmyMg9M8ZE3LrQQeg/edit?usp=sharing


💡 Такой процесс можно использовать не только для PBN-доменов, но и для SEO-аудитов, поиска утраченных сайтов или анализа истории брендов.


Чтобы скачать рабочий WorkFlow переходи в мой канал и забирай его в этом посте - вот ссылка.

Удачи всем и высокого конверта, подписывайтесь на мой канал DofollowLab , будет много интересного и полезного.🤑🤑🤑

Report Page