urllib в Python 3 не дает мне умлаут - PullRequest
0 голосов
/ 23 ноября 2018

Я пытаюсь получить некоторые результаты Google с BeautifulSoup и urllib:

from urllib.request import Request, urlopen
from urllib.parse import quote
from bs4 import BeautifulSoup

url = "http://www.google.de/search?q=" + quote("ätzend")

req = Request(url, headers={'User-Agent': 'Mozilla/5.0'})
soup = BeautifulSoup(urlopen(req),"html.parser")

for item in soup.select(".r a"):
        print(item.text)

Это результат:

�tzende Stoffe � Wikipedia
�tzende Stoffe � Wikipedia
�tzend � Wikipedia

Я пытался использовать decode('utf-8'), это не помогает.Что я могу сделать?

Редактировать: Также пробовал:

soup = BeautifulSoup(urlopen(req).read().decode('utf-8'),"html.parser")

Та же проблема.использование utf-16 тоже не помогает.Юникод для буквы `Ä '- 196 => C4.

Edit2: Windows Power Shell показывает правильные результаты.

...