Реалізація аудиту існуючого контенту перед міграцією

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Реалізація аудиту існуючого контенту перед міграцією
Середня
~2-3 робочих дні
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Реалізація аудиту існуючого контенту перед міграцією

Аудит контенту — інвентаризація та аналіз всіх матеріалів на поточному сайті перед перенесенням на нову платформу. Дозволяє зрозуміти, що переносити, що оновлювати, а що видалити.

Завдання аудиту

  • Скласти повний список URL на сайті
  • Виявити застарілий та дублюючий контент
  • Визначити SEO-показники кожної сторінки
  • Знайти зламані посилання та відсутні метадані
  • Приоритизувати контент для переносу

Крауліліг сайту для складання інвентаря

Screaming Frog — стандартний інструмент для аудиту:

Конфіг:
- Configuration → Spider → Crawl all subdomains
- Включити: JS rendering (для SPA)
- Експорт: All tabs → Save as CSV

Результат: CSV з полями — URL, Title, Meta Description, H1, Status Code, Indexability, Word Count, Inlinks, Outlinks.

Python-крауулер для автоматизації:

import scrapy
from scrapy.crawler import CrawlerProcess

class ContentAuditSpider(scrapy.Spider):
    name = 'content_audit'
    start_urls = ['https://company.com']
    custom_settings = {
        'DEPTH_LIMIT': 10,
        'DOWNLOAD_DELAY': 0.5,
        'FEEDS': {'audit_results.csv': {'format': 'csv'}}
    }

    def parse(self, response):
        yield {
            'url': response.url,
            'status': response.status,
            'title': response.css('title::text').get(''),
            'h1': response.css('h1::text').get(''),
            'meta_description': response.css('meta[name="description"]::attr(content)').get(''),
            'canonical': response.css('link[rel="canonical"]::attr(href)').get(''),
            'robots': response.css('meta[name="robots"]::attr(content)').get('all'),
            'word_count': len(' '.join(response.css('main *::text').getall()).split()),
            'internal_links': len(response.css('a[href^="/"]')),
            'images_without_alt': len(response.css('img:not([alt])')),
            'last_modified': response.headers.get('Last-Modified', b'').decode()
        }

        for link in response.css('a::attr(href)').getall():
            yield response.follow(link, self.parse)

Аналіз SEO-даних

Експорт з Google Search Console:

  • Performance → Pages: клики, покази, CTR, позиція
  • Coverage: індексовані / не індексовані сторінки
  • URL Inspection: статус конкретних URL

Сопоставлення з краул-даними у Python:

import pandas as pd

crawl_data = pd.read_csv('audit_results.csv')
gsc_data = pd.read_csv('gsc_pages.csv')  # експорт з GSC

merged = crawl_data.merge(gsc_data, on='url', how='left')
merged['has_seo_value'] = merged['clicks'] > 0  # сторінки з трафіком

Класифікація контенту

Кожна сторінка отримує мітку:

Рішення Критерії
Перенести Клики > 0, унікальний контент, актуально
Оновити при переносі Контент застарів, але має SEO-вагу
Об'єднати Дублюючі сторінки на одну тему
Видалити + редирект Нема трафіку, дубль, thin content
Не переносити Тестові сторінки, архів, служебні URL
def classify_page(row):
    if row.get('noindex') or row['status'] != 200:
        return 'skip'
    if row.get('clicks', 0) > 100 or row.get('inlinks', 0) > 5:
        return 'migrate_priority_high'
    if row.get('word_count', 0) < 100:
        return 'review_thin_content'
    if row.get('clicks', 0) > 0:
        return 'migrate'
    return 'archive'

Аналіз медіафайлів

# Список всіх медіафайлів на сервері
find /var/www/uploads -type f | awk -F. '{print $NF}' | sort | uniq -c

# Файли без посилань з контенту (потенційне сміття)
# Крок 1: витягнути всі img src з БД
mysql -e "SELECT DISTINCT image_url FROM posts WHERE image_url IS NOT NULL" > used_files.txt

# Крок 2: порівняти з файлами на диску
comm -23 <(ls /uploads/ | sort) <(sort used_files.txt)

Інвентар метаданих SEO

# Знайти сторінки без meta description
missing_meta = merged[merged['meta_description'].isna() | (merged['meta_description'] == '')]
print(f"Без meta description: {len(missing_meta)} сторінок")

# Знайти дублюючиеся Title
duplicate_titles = merged[merged.duplicated(subset='title', keep=False)]
print(f"Дублюючиеся Title: {len(duplicate_titles)} сторінок")

# Експорт завдань для копірайтерів
missing_meta[['url', 'title', 'h1']].to_csv('tasks_add_meta.csv', index=False)

Итоговий звіт аудиту

Структура звіту:

  1. Зведена статистика (загальне число URL, статуси, розподіл за типами)
  2. SEO-здоров'я (% сторінок з meta description, H1, canonical)
  3. Технічні проблеми (зламані посилання, сторінки з помилками)
  4. Список сторінок за рішеннями (таблиця з URL та action)
  5. Рекомендації за пріоритетами переносу

Тривалість виконання

Аудит сайту до 1000 сторінок з класифікацією та звітом — 3–5 робочих днів.