避免使用 Beautifulsoup 和 urllib.request 下载图像

Avoid downloading images using Beautifulsoup and urllib.request

我正在使用 BeautifulSoup'lxml' 解析器)和 urllib.request.urlopen() 从网站获取文本信息。但是,当我检查活动监视器中的网络部分时,我发现 python 下载了大量数据。这表明不仅下载了文本,还下载了图像。

是否可以在使用 BeautifulSoup 进行网络抓取时避免下载图像?

这不太可能,因为图像不在它们所在的页面上 <img src="/here/goes/this/img"..。浏览器或 urllib 必须多次访问 where-ever 静态文件,如 JS、img、CSS。一种减小大小的可能解决方案是请求压缩内容。

"Accept-Encoding":"gzip" header 添加到 Request object。如果服务器支持的话,体积缩小会很好。然后,您将 gzip.decompress() 它以获取字符串数据。