Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web scraping 避免使用Beautifulsoup和urllib.request下载图像_Web Scraping_Beautifulsoup_Urllib_Urlopen - Fatal编程技术网

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

Web scraping 避免使用Beautifulsoup和urllib.request下载图像,web-scraping,beautifulsoup,urllib,urlopen,Web Scraping,Beautifulsoup,Urllib,Urlopen,我正在使用urllib.request.urlopen()('lxml'解析器)和urllib.request.urlopen()从网站获取文本信息。然而,当我查看活动监视器中的网络部分时,我看到python下载了大量数据。这意味着不仅要下载文本,还要下载图像 在使用BeautifulSoup浏览网页时,是否可以避免下载图像?这不太可能,因为图像不在它们所在的页面上。浏览器或urllib必须多次访问JS、img、CSS等静态文件所在的位置。减少大小的一个可能解决方案是请求压缩内容 添加“接受编码

我正在使用
urllib.request.urlopen()
'lxml'
解析器)和
urllib.request.urlopen()
从网站获取文本信息。然而,当我查看活动监视器中的网络部分时,我看到python下载了大量数据。这意味着不仅要下载文本,还要下载图像


在使用BeautifulSoup浏览网页时,是否可以避免下载图像?

这不太可能,因为图像不在它们所在的
页面上。浏览器或
urllib
必须多次访问JS、img、CSS等静态文件所在的位置。减少大小的一个可能解决方案是请求压缩内容


添加
“接受编码”:“gzip”
头到
请求
对象。如果服务器支持它,那么大小的减少就很好了。然后将
gzip.decompress()
它以获取字符串数据。

?您真的能看到您的响应中写入的原始图像字节码吗?否则我不知道你为什么要下载图片。图像通常单独存储在
属性中-HTML scrapers将包含一个指向以文本形式表示的图像的链接,但实际上不会强制下载图像,因为您从未告诉它跟随该链接。我怀疑该页面的数据比您认为的要多。内联JS可以打一拳。我检查了“汤”结果并将其保存到文本文件中。您是对的,它是256KB,并且有
属性链接到实际图像。谢谢你的帮助,阿克沙!