Python Pristup internetu pomoću Urllib.Request i urlopen()
Što je urllib?
urllib je a Python modul koji se može koristiti za otvaranje URL-ova. Definira funkcije i klase koje pomažu u URL akcijama.
Kontakt Python također možete pristupiti i dohvatiti podatke s interneta kao što su XML, HTML, JSON itd. Također možete koristiti Python izravno raditi s tim podacima. U ovom vodiču ćemo vidjeti kako možemo dohvatiti podatke s weba. Na primjer, ovdje smo upotrijebili guru99 video URL, a pristupit ćemo ovom video URL-u koristeći Python kao i ispisati HTML datoteku ovog URL-a.
Kako otvoriti URL koristeći Urllib
Prije nego što pokrenemo kod za povezivanje s internetskim podacima, moramo uvesti izjavu za modul URL knjižnice ili “urllib”.
- Uvezi urllib
- Definirajte svoju glavnu funkciju
- Deklarirajte varijablu webUrl
- Zatim pozovite funkciju urlopen u biblioteci URL lib
- URL koji otvaramo je guru99 tutorial na YouTubeu
- Zatim ćemo ispisati kod rezultata
- Kod rezultata se dohvaća pozivanjem funkcije getcode na varijabli webUrl koju smo izradili
- Pretvorit ćemo to u niz, tako da se može spojiti s našim "kodom rezultata" niza.
- To će biti uobičajeni HTTP kod "200", što znači da je http zahtjev uspješno obrađen
Kako dobiti URL obrasca HTML datoteke Python
Također možete pročitati HTML datoteku pomoću "funkcije čitanja" u Python, a kada pokrenete kod, HTML datoteka će se pojaviti u konzoli.
- Pozovite funkciju čitanja na varijabli webURL
- Varijabla za čitanje omogućuje čitanje sadržaja podatkovnih datoteka
- Pročitajte cijeli sadržaj URL-a u varijablu pod nazivom podaci
- Pokrenite kod - ispisat će podatke u HTML format
Ovdje je kompletan kod
Python 2 Primjer
# # 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 Primjer
# # 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)