2016-12-04 10 views
1

Привет, ребята, я пытаюсь получить html-данные с сайта с помощью urllib.openurl.read() но для некоторых сайтов все, что я получаю, это передача данных * 6 \ xbdW \ xb6 \ xd6 \ xff \ xca \ x9d \ x9bO | \ xc0 \ x96a \ xc7 \ xc8 \ xf7 \ xa7 \ x10- \ x8aM {\ xf8 \ x * и я понятия не имею, что это такое и почему я получаю вот так. Я пробовал погулять, некоторые говорили, что есть проблема с декодированием кодирования, я тоже это пробовал, но, поскольку вы не можете видеть удачи там, пожалуйста, направляйте меня в этой темноте. Вот мой код --->Я пытаюсь получить html данные с сайта с помощью urllib, но для некоторых сайтов я заканчиваю с некоторыми неизвестными символами в python

url = "http://mangafox.me/manga/online_the_comic/c001/1.html" # for this site and some more its not working 
page = urllib.urlopen(url).read() 
print page 

и вы, ребята, знаете, что происходит после печати этого кода.

+0

Почему бы не использовать 'requests' и Beautiful Soup? – jonrsharpe

ответ

0

Эта страница его в формате GZIP, вы должны распаковать, прежде чем принимать данные:

UnicodeDecodeError: 'ascii' codec can't decode byte 0x8b in position 1: ordinal not in range(128) 

0x8b в начало кода это означает GZIP формат.

Вы должны взглянуть на этот вопрос:

twitter trends api UnicodeDecodeError: 'utf8' codec can't decode byte 0x8b in position 1: unexpected code byte