2017-06-04 15 views
1

Hallo Ich habe das erforscht, aber ich kann keine Antworten auf diese Frage finden. Ich muss ein Unterverzeichnis einer Webseite in eine Zeichenfolge für eine Suche herunterladen, ich weiß, muss dies tun, aber das einzige Problem ist die Website ist verschlüsselt und erfordert eine Anmeldung für den Zugriff auf das Verzeichnis. Ich weiß, dass ich die Cookies senden muss, um den Download anzufordern, aber ich bin mir nicht sicher, wie ich das machen soll. Ich kodiere Python. zögern Sie nicht nach mehr Informationen zu fragen.Download verschlüsselte Webseite

+1

Fühlen Sie sich frei, zuerst eine Frage zu stellen, wir sind nicht hier, um Sie in Frage zu stellen, was Sie zuerst fragen möchten. –

+0

Wenn eine Anmeldung erforderlich ist, ist die einzige zusätzliche Sache, dass Sie die Anmeldeseite mit Ihren Anmeldeinformationen berühren. Alle Seiten sind verschlüsselt, Sie müssen sich nicht um die Verschlüsselung kümmern. Berücksichtige einfach die korrekte URL und korrigiere Post-Parameter. –

Antwort

0
import urllib 
import urllib2 
import cookielib 
import time 

# All your cookie related things are done by this. 
cookie_jar = cookielib.CookieJar() 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie_jar)) 
urllib2.install_opener(opener) 


#POST Parameters for login page. 
request_body_params = {'your_parameter_name': 'its_value', 'another_parameter_name': 'its_value'} 


data_encoding = urllib.urlencode(request_body_params) 
url_main = 'https://your_site.com/login' 

main_request = urllib2.Request(url_main, data_encoding) 

#Any headers required goes here. 
main_request.add_header('Accept-encoding', 'gzip') 

# This is the response of login. You don't want to read this. 
main_response = urllib2.urlopen(main_request) 

# You want data from this link. 
url_results = 'https://your_site.com/sub_directory' 
results_response = urllib2.urlopen(url_results) 

print results_response.read() 

Um die POST-Parameter zu überprüfen, von einem Browser auf die Website gehen, klicken Sie auf 'View Source', gehen Sie auf 'Netzwerk' in Quelltext anzeigen. Wenn Sie sich dann im Browser anmelden, werden Netzwerkprotokolle erstellt. Klicken Sie auf den Link und sehen Sie sich die POST-Parameter und Header an.

Verwandte Themen