Python Достъп до Интернет чрез Urllib.Request и urlopen()
Какво е urllib?
urllib е a Python модул, който може да се използва за отваряне на URL адреси. Той дефинира функции и класове, за да помогне при URL действия.
с Python можете също да осъществявате достъп и да извличате данни от интернет като XML, HTML, JSON и др. Можете също да използвате Python да работи директно с тези данни. В този урок ще видим как можем да извлечем данни от мрежата. Например, тук използвахме URL адрес на видео guru99 и ще осъществим достъп до този URL адрес на видео чрез Python както и да отпечатате HTML файл на този URL адрес.
Как да отворите URL с помощта на Urllib
Преди да изпълним кода, за да се свържем с интернет данни, трябва да импортираме израз за модул на URL библиотека или „urllib“.
- Импортиране на urllib
- Определете вашата основна функция
- Декларирайте променливата webUrl
- След това извикайте функцията urlopen в библиотеката URL lib
- URL адресът, който отваряме, е guru99 tutorial в youtube
- След това ще отпечатаме резултатния код
- Кодът на резултата се извлича чрез извикване на функцията getcode на променливата webUrl, която сме създали
- Ще го преобразуваме в низ, така че да може да бъде конкатениран с нашия низ „резултатен код“
- Това ще бъде обикновен HTTP код „200“, което показва, че http заявката е обработена успешно
Как да получите URL адрес на формата на HTML файл Python
Можете също да прочетете HTML файла, като използвате „функцията за четене“ в Python, и когато стартирате кода, HTML файлът ще се появи в конзолата.
- Извикайте функцията за четене на променливата webURL
- Променливата за четене позволява да се чете съдържанието на файлове с данни
- Прочетете цялото съдържание на URL адреса в променлива, наречена данни
- Стартирайте кода - Той ще отпечата данните в HTML формат
Ето пълния код
Python 2 Пример
# # 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 Пример
# # 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)