Suurepärase foorumibaasi sõelumiseks Xrumeri või sarnase softi jaoks piisab, kui leida üks teema, kus keegi avaldab oma teemasid (reklaame) ja lingib oma teemasid teistes foorumites, et neid tugevdada.

Selle skripti abil saate koguda nende andmebaasi.

Nõuded:

Installige vajalikud teegid, kasutades:

pip install requests beautifulsoup4

Skript:

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

Kuidas skript töötab:

  1. Funktsioon get_links:
    • Saadab päringu antud URL-ile.
    • Parsib HTML-i ja kogub kõik lingid.
  2. Funktsioon is_external:
    • Kontrollib, kas link on väline.
  3. Funktsioon scrape_forums:
    • Rekursiivselt kraabib foorumeid alates antud URL-idest.
    • Kogub kõik välised lingid.
  4. Funktsioon save_links_to_file:
    • Salvestab kõik kogutud välised lingid tekstifaili.
  5. Stsenaariumi põhiosa:
    • Määrab algsed foorumi URL-id.
    • Käivitab kraapimisprotsessi.
    • Salvestab kogutud lingid faili.

Kasutusjuhend:

Sisestage algsed foorumi URL-id starting_urls nimekirja.
Käivitage skript:

python script_name.py

Kogutud lingid salvestatakse aadressile external_links.txt faili.

Seda skripti saab täiustada ja kohandada vastavalt konkreetsetele vajadustele, nagu keerulisemad sõelumisreeglid või vigade käsitlemine.

Kommentaarid (0)

Siin pole veel kommentaare, võite olla esimene!

Lisa kommentaar

Sinu e-postiaadressi ei avaldata. Nõutavad väljad on tähistatud *-ga


Vali ja osta proxy

Andmekeskuse proksid

Pöörlevad proksid

UDP Proxy'd

Usaldab üle 10 000 kliendi kogu maailmas

Puhverklient
Puhverklient
Puhverklient flowch.ai
Puhverklient
Puhverklient
Puhverklient