Для анализа отличной базы форумов по Xrumer или аналогичному софту достаточно найти одну тему, где кто-то публикует свои темы (рекламу) и ссылается на свои темы на других форумах для их усиления.

С помощью этого скрипта вы сможете собрать свою базу данных.

Требования:

Установите необходимые библиотеки, используя:

pip install requests beautifulsoup4

Скрипт:

import requests
from bs4 import BeautifulSoup
from urllib.parse import urlparse, urljoin
import time

def is_external(url, base_url):
    return urlparse(url).netloc != urlparse(base_url).netloc

def get_links(url):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
    try:
        response = requests.get(url, headers=headers, timeout=10)
        response.raise_for_status()
        soup = BeautifulSoup(response.text, 'html.parser')
        links = [a.get('href') for a in soup.find_all('a', href=True)]
        return links
    except requests.RequestException as e:
        print(f"Failed to fetch {url}: {e}")
        return []

def scrape_forums(starting_urls, max_depth=2):
    visited = set()
    external_links = set()
    
    def scrape(url, depth):
        if url in visited or depth > max_depth:
            return
        print(f"Scraping {url} at depth {depth}")
        visited.add(url)
        
        links = get_links(url)
        for link in links:
            full_url = urljoin(url, link)
            if is_external(full_url, url):
                external_links.add(full_url)
            else:
                scrape(full_url, depth + 1)
    
    for url in starting_urls:
        scrape(url, 1)
    
    return external_links

def save_links_to_file(links, filename):
    with open(filename, 'w') as f:
        for link in links:
            f.write(link + '\n')

if __name__ == '__main__':
    starting_urls = [
        # Add your starting forum URLs here
        'http://example-forum.com/topic1',
        'http://example-forum.com/topic2'
    ]
    filename = 'external_links.txt'
    
    external_links = scrape_forums(starting_urls)
    save_links_to_file(external_links, filename)
    
    print(f"Collected {len(external_links)} external links. Saved to {filename}.")

Как работает скрипт:

  1. Функция get_links:
    • Отправляет запрос на указанный URL.
    • Парсит HTML и собирает все ссылки.
  2. Функция is_external:
    • Проверяет, является ли ссылка внешней.
  3. Функция scrape_forums:
    • Рекурсивно очищает форумы, начиная с заданных URL-адресов.
    • Собирает все внешние ссылки.
  4. Функция save_links_to_file:
    • Сохраняет все собранные внешние ссылки в текстовый файл.
  5. Основная часть сценария:
    • Устанавливает начальные URL-адреса форума.
    • Запускает процесс очистки.
    • Сохраняет собранные ссылки в файл.

Инструкции по использованию:

Вставьте исходные URL-адреса форума в файл starting_urls список.
Запустите скрипт:

python script_name.py

Собранные ссылки будут сохранены в external_links.txt файл.

Этот сценарий можно улучшить и адаптировать к конкретным потребностям, например, к более сложным правилам синтаксического анализа или обработке ошибок.

Комментарии (0)

Здесь пока нет комментариев, вы можете быть первым!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Выбрать прокси

Серверные прокси

Ротационные прокси

Прокси-серверы с UDP

Нам доверяют более 10 000 клиентов по всему миру

Прокси-клиент
Прокси-клиент
Прокси клиента flowch.ai
Прокси-клиент
Прокси-клиент
Прокси-клиент