Project Gutenberg получает доступ к тексту по URL

Я пытаюсь получить доступ к текстовому файлу с URL-адреса проекта Gutenberg. Следовательно, я скопировал тот же код из книги nltk, результат был другим.

from urllib import request
url = "http://www.gutenberg.org/files/2554/2554-0.txt"
response = request.urlopen(url)
raw = response.read().decode('utf8')
raw[:75]

Это было из книги nltk. Когда он работает правильно, он должен распечатать,

’The Project Gutenberg EBook of Crime and Punishment, by Fyodor Dostoevsky\r\n’

Но когда я попробовал то же самое на своем компьютере, вышло следующее:

'\ufeffThe Project Gutenberg EBook of Crime and Punishment, by Fyodor Dostoevsky\r'

Думаю, проблема с заголовками в проекте Gutenberg. Не могли бы вы мне помочь, как с этим справиться?

1 ответ

Текст ответа URL кажется закодированным в UTF-8 с BOM.

Пытаться:

from urllib import request

url = "http://www.gutenberg.org/files/2554/2554-0.txt"

response = request.urlopen(url)
raw = response.read()
text = raw.decode("utf-8-sig")

См. Этот ответ для получения дополнительной информации

Другие вопросы по тегам