Python Internet-yhteys käyttämällä Urllib.Request ja urlopen()

Mikä on urllib?

urllib on a Python moduuli, jota voidaan käyttää URL-osoitteiden avaamiseen. Se määrittelee funktioita ja luokkia auttamaan URL-toiminnoissa.

Kanssa Python voit myös käyttää ja hakea tietoja Internetistä, kuten XML, HTML, JSON jne. Voit myös käyttää Python käsitellä näitä tietoja suoraan. Tässä opetusohjelmassa aiomme nähdä, kuinka voimme hakea tietoja verkosta. Esimerkiksi tässä käytimme guru99-videon URL-osoitetta, ja aiomme käyttää tätä videon URL-osoitetta käyttämällä Python sekä tulostaa tämän URL-osoitteen HTML-tiedosto.

URL-osoitteen avaaminen Urllibilla

Ennen kuin suoritamme koodin muodostaaksemme yhteyden Internet-tietoihin, meidän on tuotava URL-kirjastomoduulin tai "urllib" -lauseke.

Avaa URL käyttämällä Urllibiä

  • Tuo urllib
  • Määrittele päätehtäväsi
  • Ilmoita muuttuja webUrl
  • Kutsu sitten URL lib -kirjaston urlopen-funktio
  • Avaamme URL-osoite on guru99-opastus YouTubessa
  • Seuraavaksi tulostetaan tuloskoodi
  • Tuloskoodi haetaan kutsumalla luomamme webUrl-muuttujan getcode-funktio
  • Muunnamme sen merkkijonoksi, jotta se voidaan ketjuttaa merkkijonomme "tuloskoodiin"
  • Tämä on tavallinen HTTP-koodi "200", mikä osoittaa, että http-pyyntö on käsitelty onnistuneesti

Kuinka saada HTML-tiedostolomakkeen URL-osoite Python

Voit myös lukea HTML-tiedoston käyttämällä "lukutoimintoa". Python, ja kun suoritat koodin, HTML-tiedosto tulee näkyviin konsoliin.

HTML-tiedostomuodon URL-osoite sisään Python

  • Kutsu webURL-muuttujan lukutoiminto
  • Read-muuttuja mahdollistaa datatiedostojen sisällön lukemisen
  • Lue URL-osoitteen koko sisältö muuttujaksi nimeltä data
  • Suorita koodi - Se tulostaa tiedot HTML-muotoon

Tässä on täydellinen koodi

Python 2-esimerkki

#  
# 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-esimerkki

#
# 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)

Tiivistä tämä viesti seuraavasti: