我正在尝试使用请求和美丽的汤从网页中提取内容。
使用请求检索页面内容时,我遇到了一个相当奇怪的问题。正如您在屏幕截图(original page)中看到的那样,- (void) URLSession:downloadTask:didFinishDownloadingToURL:
字符似乎随机插入(我已突出显示它们以使其更清晰)。
示例代码:
Â
起初,我认为这与编码不是UTF-8有关,但这似乎没问题:
from bs4 import BeautifulSoup
import requests
url = 'https://technet.microsoft.com/en-us/sysinternals/bb963902'
r = requests.get(url=url)
with open('/Users/xxxx/test.html', 'wb') as f:
f.write(r.content)
我尝试使用curl(r.encoding
>> 'utf-8'
)检索同一页面,输出中也会显示相同的问题。
答案 0 :(得分:1)
您正确收到该文件。由于HTML文件缺少字符集信息,因此当您查看下载的文件时,浏览器会检测到错误的编码(Western而不是Unicode)。
当您在线浏览时,它会正确呈现,因为服务器会在Content-Type标头中发送字符集信息。