Python Dostęp do Internetu za pomocą Urllib.Request i urlopen()
Co to jest urllib?
urllib jest Python moduł, którego można używać do otwierania adresów URL. Definiuje funkcje i klasy pomagające w akcjach URL.
Z Python możesz także uzyskać dostęp i pobrać dane z Internetu, takie jak XML, HTML, JSON itp. Możesz także użyć Python do bezpośredniej pracy z tymi danymi. W tym samouczku zobaczymy, jak możemy odzyskać dane z Internetu. Na przykład tutaj użyliśmy adresu URL filmu guru99 i uzyskamy dostęp do tego adresu URL filmu za pomocą Python a także wydrukuj plik HTML tego adresu URL.
Jak otworzyć adres URL za pomocą Urllib
Zanim uruchomimy kod umożliwiający połączenie z danymi internetowymi, należy zaimportować instrukcję dla modułu biblioteki URL czyli „urllib”.
- Zaimportuj urllib
- Zdefiniuj swoją główną funkcję
- Zadeklaruj zmienną webUrl
- Następnie wywołaj funkcję urlopen w bibliotece URL lib
- Otwieramy adres URL guru99 tutorial na youtube
- Następnie wydrukujemy kod wyniku
- Kod wynikowy pobieramy wywołując funkcję getcode na utworzonej przez nas zmiennej webUrl
- Zamierzamy przekonwertować to na ciąg znaków, aby można go było połączyć z naszym ciągiem „kodem wyniku”
- Będzie to zwykły kod HTTP „200”, wskazujący, że żądanie http zostało pomyślnie przetworzone
Jak uzyskać adres URL formularza pliku HTML w Python
Możesz także przeczytać plik HTML, korzystając z „funkcji odczytu” w Python, a po uruchomieniu kodu plik HTML pojawi się w konsoli.
- Wywołaj funkcję read w zmiennej webURL
- Zmienna odczytu pozwala na odczytanie zawartości plików danych
- Wczytaj całą zawartość adresu URL do zmiennej zwanej danymi
- Uruchom kod — wydrukuje dane w formacie HTML
Oto pełny kod
Python 2 Przykład
#
# 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 Przykład
#
# 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)


