Aby przeanalizować doskonałą bazę forów dla Xrumera lub podobnego oprogramowania, wystarczy znaleźć jeden temat, w którym ktoś publikuje własne tematy (reklamy) i łączy swoje tematy z innymi forami, aby je wzmocnić.

Za pomocą tego skryptu możesz zebrać ich bazę danych.

Wymagania:

Zainstaluj niezbędne biblioteki, używając:

pip install requests beautifulsoup4

Scenariusz:

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}.")

Jak działa skrypt:

  1. Funkcja get_links:
    • Wysyła żądanie na podany adres URL.
    • Analizuje kod HTML i zbiera wszystkie linki.
  2. Funkcja is_external:
    • Sprawdza, czy łącze jest zewnętrzne.
  3. Funkcja scrape_forums:
    • Rekurencyjnie przeszukuje fora, zaczynając od podanych adresów URL.
    • Gromadzi wszystkie linki zewnętrzne.
  4. Funkcja save_links_to_file:
    • Zapisuje wszystkie zebrane linki zewnętrzne do pliku tekstowego.
  5. Główna część scenariusza:
    • Ustawia początkowe adresy URL forum.
    • Rozpoczyna proces skrobania.
    • Zapisuje zebrane linki do pliku.

Instrukcja użycia:

Wstaw początkowe adresy URL forum do pliku starting_urls lista.
Uruchom skrypt:

python script_name.py

Zebrane linki zostaną zapisane w pliku external_links.txt plik.

Skrypt ten można ulepszyć i dostosować do konkretnych potrzeb, takich jak bardziej złożone reguły analizy lub obsługa błędów.

Komentarze (0)

Nie ma tu jeszcze żadnych komentarzy, możesz być pierwszy!

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *


Wybierz i kup proxy

Serwery proxy dla centrów danych

Obrotowe proxy

Serwery proxy UDP

Zaufało nam ponad 10000 klientów na całym świecie

Klient proxy
Klient proxy
Klient proxy flowch.ai
Klient proxy
Klient proxy
Klient proxy