Вот мой код:
Код: Выделить всё
from bs4 import BeautifulSoup as soup
import requests
from urllib.request import urlopen, Request
myurl = "https://www.google.com/search?q=temperature+today"
req = Request(
myurl,
data=None,
headers={
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'
}
)
f = Request(req) # This line seems to be causing the error
print(f.read().decode('utf-8'))
ValueError: неизвестный тип URL: 'urllib.request.Request объект по адресу 0x004BF610'
Я считаю, что ошибка связана с тем, как я использую urllib.request.Request. Сначала я думал, что он взаимозаменяем с urllib.request.urlopen, но, похоже, это не так. Когда я печатаю объект req, я получаю объект .
Может ли кто-нибудь объяснить, почему мой текущий подход неверен, и подсказать, как его исправить? Я хочу понять ошибку и то, как правильно использовать urllib.request для отправки запросов и чтения ответов.
Мой вопрос отличается от другого сообщения о переполнении стека ([https://stackoverflow.com/questions/56362584/ valueerrorunknown-url-type-r-self-full-url]), поскольку он фокусируется на другом аспекте urllib.request.
Подробнее здесь: https://stackoverflow.com/questions/639 ... urllib-req