[Python] Cercare un server proxy (SOCKS5)

Può capitare di avere bisogno di utilizzare all’interno del proprio codice un servizio proxy SOCKS5 per rendere un po’ più anonima la navigazione nel web senza utilizzare una più sicura, ma più lenta VPN. Personalmente risolvo utilizzando questa funzione in Python che ho realizzato sfruttando i moduli requestBeautifulSoup che richiama la pagina dedicata del portale Spys.one, legge la lista dei server disponibili e ritorna l’IP del server con la relativa porta di utilizzo.

Di seguito il codice pronto all’utilizzo:

import requests
from bs4 import BeautifulSoup

def cercaProxy():
    ip = ''
    porta = ''
    proxy = ''
    t_data = {}
    
    url = "http://spys.one/en/socks-proxy-list/"
    r = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'})
    soup = BeautifulSoup(r.content, 'lxml')
    cercaip = soup.find_all('font', attrs={'class' : 'spy14'})
    work = cercaip[1].text
    legenda = soup.find_all('script', attrs={'type' : 'text/javascript'})
    discover = (legenda[1].text).split(';')
    
    for brace in discover:
        if brace == '':
            continue
        tar = brace.split('=')
        if tar[1][1] == '^':
            t_data.update({tar[0]:tar[1][0]})
            
    if work.find('document.write'):
        start_index = work.find('document.write')
        ip = work[:start_index]
        plus_index = work.find('"+(') + 2
        porta_tmp = work[plus_index:-1]
        leggiporta=porta_tmp.split('+')
        for item in leggiporta:
            rar = item.split('^')
            itm_porta = str(t_data.get(rar[0][1:], 'n'))
            porta = porta + itm_porta
            
    proxy = ip + ':' + porta
    print 'Proxy ip: ' + proxy
    return proxy

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: