Python Internetadgang ved hjælp af Urllib.Request og urlopen()
Hvad er urllib?
urllib er en Python modul, der kan bruges til at åbne URL'er. Den definerer funktioner og klasser for at hjælpe med URL-handlinger.
Med Python du kan også få adgang til og hente data fra internettet som XML, HTML, JSON osv. Du kan også bruge Python at arbejde med disse data direkte. I denne tutorial skal vi se, hvordan vi kan hente data fra nettet. For eksempel brugte vi her en guru99 video-URL, og vi vil få adgang til denne video-URL ved hjælp af Python samt udskriv HTML-fil af denne URL.
Sådan åbnes URL ved hjælp af Urllib
Før vi kører koden for at oprette forbindelse til internetdata, skal vi importere erklæring til URL-biblioteksmodul eller "urllib".
- Importer urllib
- Definer din hovedfunktion
- Deklarer variablen webUrl
- Kald derefter urlopen-funktionen på URL-biblioteket
- URL'en vi åbner er guru99 tutorial på youtube
- Dernæst skal vi udskrive resultatkoden
- Resultatkoden hentes ved at kalde funktionen getcode på den webUrl-variabel, vi har oprettet
- Vi vil konvertere det til en streng, så det kan sammenkædes med vores streng "resultatkode"
- Dette vil være en almindelig HTTP-kode "200", hvilket indikerer, at http-anmodningen er behandlet med succes
Sådan får du HTML-filformular URL ind Python
Du kan også læse HTML-filen ved at bruge "læsefunktionen" i Python, og når du kører koden, vises HTML-filen i konsollen.
- Kald læsefunktionen på webURL-variablen
- Læs variabel gør det muligt at læse indholdet af datafiler
- Læs hele indholdet af URL'en ind i en variabel kaldet data
- Kør koden - Det vil udskrive dataene i HTML-format
Her er den komplette kode
Python 2 Eksempel
# # read the data from the URL and print it # import urllib2 def main(): # open a connection to a URL using urllib2 webUrl = urllib2.urlopen("https://www.youtube.com/user/guru99com") #get the result code and print it print "result code: " + str(webUrl.getcode()) # read the data from the URL and print it data = webUrl.read() print data if __name__ == "__main__": main()
Python 3 Eksempel
# # read the data from the URL and print it # import urllib.request # open a connection to a URL using urllib webUrl = urllib.request.urlopen('https://www.youtube.com/user/guru99com') #get the result code and print it print ("result code: " + str(webUrl.getcode())) # read the data from the URL and print it data = webUrl.read() print (data)