我正在尝试使用BeautifulSoup 4从网站中提取电影信息。代码的相关部分是:
from bs4 import BeautifulSoup as Soup
import requests
url = r'http://www.the-numbers.com/movies/1997/ASGOD.php' #is passed relevant url
r = requests.get(url)
soup = Soup(r.content, from_encoding = r.encoding)
虽然它在网站的一些页面中运行良好,但在这个特定的页面上它会返回错误消息:
UnicodeDecodeError: 'utf8' codec can't decode byte 0x80 in position 0: invalid start byte
至少那通常是错误。它偶尔(并且看似随机)给我一个稍微不同的区域,抱怨不同位置的不同解码位(例如位置229中的0xea)。
问题页面为here。一个看起来非常相似但可以工作的例子是here。
我假设该页面上存在某种编码错误,它会抛出BeautifulSoup的循环,所以我想我的问题是是否有某种方法来修复该错误?
非常感谢, 亚历