Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [PYTHON] Aprire e chiudere ripetutamente pagine web con login

    In merito a quanto ho chiesto in questo topic ho pensato di provare in Python ma non mi tiene aperto il login, perciò non mi serve a niente. Come faccio a tenere aperta la connessione in python?

    Codice PHP:
    import urllib2

    username 
    raw_input("Insert Username: ")
    password raw_input("Insert Password: ")
    start input("Insert starting number: ")
    repeater input("Insert repeat number: ")

    logon "http://www.bloodywow.com/my-account.php?do=login&username=" username "&password=" password
    page 
    "http://www.bloodywow.com/my-account-3.php?do=up"

    loginHandle urllib2.urlopen(logon)

    for 
    i in range(startstart repeater):
        
    pageHandle urllib2.urlopen(page str(i))
        
    pageHandle.close()

    loginHandle.close()

    print 
    "Finished!" 

  2. #2

    Re: [PYTHON] Aprire e chiudere ripetutamente pagine web con login

    Originariamente inviato da Zorgatone
    In merito a quanto ho chiesto in questo topic ho pensato di provare in Python ma non mi tiene aperto il login, perciò non mi serve a niente. Come faccio a tenere aperta la connessione in python?

    Codice PHP:
    import urllib2

    username 
    raw_input("Insert Username: ")
    password raw_input("Insert Password: ")
    start input("Insert starting number: ")
    repeater input("Insert repeat number: ")

    logon "http://www.bloodywow.com/my-account.php?do=login&username=" username "&password=" password
    page 
    "http://www.bloodywow.com/my-account-3.php?do=up"

    loginHandle urllib2.urlopen(logon)

    for 
    i in range(startstart repeater):
        
    pageHandle urllib2.urlopen(page str(i))
        
    pageHandle.close()

    loginHandle.close()

    print 
    "Finished!" 
    Ho tentato anche a usare i socket ma non li ho capiti molto, in particolare non mi permetteva di riutilizzare più volte lo stesso socket per url diversi! Mi potreste aiutare?

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Originariamente inviato da Zorgatone
    Come faccio a tenere aperta la connessione in python?
    Non sono esperto di Python, tuttavia non è chiaro cosa intendi con tenere aperta la connessione, nel senso che - trattandosi di HTTP - la connessione è stateless per definizione.

    Se ci si riferisce al fatto di "rimanere loggati nella pagina", allora molto probabilmente è necessario gestire i cookie creati in fase di login e restituirli al server sulle richieste successive.

    Come farlo in Python, non conoscendo né il linguaggio in modo approfondito né le librerie, non saprei, ma ti lascio il piacere di questa ricerca.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Originariamente inviato da alka
    Non sono esperto di Python, tuttavia non è chiaro cosa intendi con tenere aperta la connessione, nel senso che - trattandosi di HTTP - la connessione è stateless per definizione.

    Se ci si riferisce al fatto di "rimanere loggati nella pagina", allora molto probabilmente è necessario gestire i cookie creati in fase di login e restituirli al server sulle richieste successive.

    Come farlo in Python, non conoscendo né il linguaggio in modo approfondito né le librerie, non saprei, ma ti lascio il piacere di questa ricerca.
    Hai ragione sui cookies ma nonostante la numerosa documentazione sul web non trovo quasi nulla!

  5. #5
    Comunque indipendentemente dai cookies ho modificato il programma con i socket, ma uno di essi ho bisogno di riutilizzarlo nel ciclo e non me lo fa fare nemmeno dopo avere cambiato le opzioni del socket!!
    Codice PHP:
    import socket

    username 
    raw_input("Insert Username: ")
    password raw_input("Insert Password: ")
    start input("Insert starting number: ")
    repeater input("Insert repeat number: ")

    logon "http://www.bloodywow.com/my-account.php?do=login&username=" username "&password=" password
    page 
    "http://www.bloodywow.com/my-account-3.php?do=up"

    HOST 'bloodywow.com'
    PORT 80

    loginHandle 
    socket.socket(socket.AF_INETsocket.SOCK_STREAM)
    loginHandle.connect((logon80))

    pageHandle socket.socket(socket.AF_INETsocket.SOCK_STREAM)
    pageHandle.setsockopt(socket.SOL_SOCKETsocket.SO_REUSEADDR1)

    for 
    i in range(startstart repeater):
        
    currpagepage str(i)
        print 
    currpage
        pageHandle
    .connect((currpagePORT))
        
    pageHandle.shutdown(2)
    else:
        
    loginHandle.shutdown(2)

    print 
    "Finished!" 

  6. #6
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Salve,sto provando a fare lo stesso utilizzando la versione 2.7 dell' interprete,appena lo eseguo mi apre e chiude la finestra del prompt,non riesco nemmeno a leggere cosa mi dice.
    C' è un modo per settare una pausa come con la getchar() in c?

  7. #7
    Originariamente inviato da ramy89
    Salve,sto provando a fare lo stesso utilizzando la versione 2.7 dell' interprete,appena lo eseguo mi apre e chiude la finestra del prompt,non riesco nemmeno a leggere cosa mi dice.
    C' è un modo per settare una pausa come con la getchar() in c?
    Adesso non mi viene in mente... Ma potresti metterci un raw_input() e poi non usarlo... giusto per leggere.
    O meglio puoi fare attendere dei secondi:
    Codice PHP:
    from time import sleep

    sleep
    (secondi

  8. #8
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Adesso ho provato,ma non ha proprio effetto il codice.
    Quando inserisco il codice mi dovrebbe aprire la finstra di firefox automaticamente?
    E poi PORT io inserisco 80,ma come fai a sapere che è quella giusta?

  9. #9
    Originariamente inviato da ramy89
    Adesso ho provato,ma non ha proprio effetto il codice.
    Quando inserisco il codice mi dovrebbe aprire la finstra di firefox automaticamente?
    E poi PORT io inserisco 80,ma come fai a sapere che è quella giusta?
    Quanto ho scritto io non apre le pagine web in un browser!
    Non vedi questo è stato letto perche lo apri come fosse un file in lettura!

  10. #10
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Se è cosi penso che devi anche gestire i cookie per tenerti loggato,ho trovato un esempio:

    codice:
    import urllib2, cookielib, re
    
    
    
    url = 'http://secure.myspace.com/index.cfm?fuseaction=login.process'
    
    
    email = "" #put your email address here
    pwd = ""   #put your password here
    
    
    data = "__VIEWSTATE=%2FwEPDwUKLTY1Mjc2MTMwMWQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgIFPWN0bDAwJGN0bDAwJE1haW4kY3BNYWluJFNwbGFzaERpc3BsYXkkY3RsMDAkUmVtZW1iZXJfQ2hlY2tib3gFPWN0bDAwJGN0bDAwJE1haW4kY3BNYWluJFNwbGFzaERpc3BsYXkkY3RsMDAkTG9naW5fSW1hZ2VCdXR0b24%3D&NextPage=&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24Email_Textbox="+email+"&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24Password_Textbox="+pwd+"&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24Login_ImageButton.x=36&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24Login_ImageButton.y=15&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24nexturl=&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24apikey=&ctl00%24ctl00%24Main%24cpMain%24SplashDisplay%24ctl00%24ContainerPage="
    
    
    
    cj = cookielib.CookieJar()
    
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    
    opener.addheaders = [('Referer', 'http://www.myspace.com/index.cfm?fuseaction=splash'),
    
                       ('Content-Type', 'application/x-www-form-urlencoded'),
    
                       ('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14')]
    
    usock = opener.open(url, data)
    
    the_page = usock.read()
    
    usock.close()
    Non ho idea se funzioni

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 © 2024 vBulletin Solutions, Inc. All rights reserved.