Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    19

    [python3.2] connessione al router

    Espongo subito il problema...
    vorrei riuscire ad inviare comandi al mio router 3com tramite python senza dover utilizzare un browser, ecco qui il codice base
    codice:
    import http.cookiejar, urllib.request, http.client
    code="changewep=0&wps_enable=&wpa_en=1&wpa_authen=1&w802_rekey=2&\
    wsec_mode=2&wpa_mode=2&wpa_psk=0&\ sharedkey=password&sharedkey1=password"  
    pws="13201414" 
    cj = http.cookiejar.CookieJar() 
    opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj)) 
    urllib.request.install_opener(opener)    
    urllib.request.urlopen("http://192.168.1.1/cgi-bin/login.exe",\
                             pws.encode("ascii"))   
    urllib.request.urlopen("http://192.168.1.1/cgi-bin/wireless_wpa.exe",\
                            code.encode("ascii"))
    il problema è che la richiesta di login e come se non andasse a buon fine o altro, eppure non mi da alcun errore e se faccio un reason mi da ok allora ho pensato che forse dovevo creare un cookie per la sessione ma niente lo stesso, la richiesta di cambio password del wireless mi funziona solo se mi sono prima loggato sul router con firefox^^, quindi la richiesta è giusta.

    come faccio a mantenere l'autenticazione al router per poter mandare altre richieste dopo? mi sto studiando auth html per vedere se è la soluzione giusta ma ancora nessun risultato positivo, aiuto se avete bisogno di altre informazioni o chiarezza chiedetemele!! non voglio buttare la spugna voglio risolvere questo problema a tutti i costi!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    19
    ho risolto... ho capito dov'era il problema... leggendo le query post con wireshark le ho copiato su python per poter effettuare modifiche sul router senza accedere da browser, solo che mi ha confuso vedere la post query di login che inviava solo pws=13201414 io nello script mandavo solo 13201414 hahahaha... ora funziona
    Codice PHP:
    import http.cookiejarurllib.requesthttp.client  
    code
    ="changewep=0&wps_enable=&wpa_en=1&wpa_authen=1&w802_rekey=2&\
     wsec_mode=2&wpa_mode=2&wpa_psk=0&\
     sharedkey=password&sharedkey1=password"  
    pws="pws=13201414" 
    cj http.cookiejar.CookieJar() 
    opener urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj)) 
    urllib.request.install_opener(opener)    
    urllib.request.urlopen("http://192.168.1.1/cgi-bin/login.exe",\
                             
    pws.encode("ascii"))   
    urllib.request.urlopen("http://192.168.1.1/cgi-bin/wireless_wpa.exe",\
                            
    code.encode("ascii")) 
    ecco il codice, mi logga e mantiene la sessione per poter inviare tutte le richieste che voglio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.