Каков эквивалентный код от urllib2 до urllib3 в python - PullRequest
1 голос
/ 25 октября 2019

Я новичок в кодировании и прохожу онлайн-курс. Пример в курсе использует urllib2. По какой-то причине я не могу получить urllib2, но у меня есть urllib3. Код, который они написали, предназначен для urllib2, как показано ниже:

webRequest = urllib2.Request(urlofFilename,headers=hdr)

Когда я пишу это, чтобы сделать то же самое с urllib3, то есть:

webRequest = urllib3.Request(urlofFilename,headers=hdr)

Это выдает ошибку, в которой говорится, что модуль urllib3 не имеет атрибута «Запрос».

Как тогда написать тот же бит кода, но для urllib3?

Cheer

Ответы [ 2 ]

2 голосов
/ 25 октября 2019

Чтобы создать экземпляр объекта Request в urllib3, вы должны использовать PoolManager(). Вы передадите заголовки как дополнительные данные запроса :

http = urllib3.PoolManager()
webRequest = http.request('GET', urlofFilename, headers={'key': value})
0 голосов
/ 25 октября 2019

В Urllib2 и Urllib3 внесены некоторые изменения. Вы можете прикоснуться к этому, прочитав документацию. Пример кода приведен ниже.

Это документация по Urllib3 Документация по Urllib3

import urllib3

http = urllib3.PoolManager()
r = http.request('POST', 'https://urllib3.readthedocs.io/en/latest/user-guide.html')
print(r.status)
  • Совет: если вы начинаете что-то новое, перейдите через оригиналдокументация. : |)
...