从搜索引擎中抓取图像

时间:2020-03-24 21:49:54

标签: javascript node.js web-scraping bing google-image-search

我想构建一个图像抓取器,该图像抓取器可从bing,google或任何搜索引擎中抓取图像。关于此主题有很多答案和信息,但是似乎它们不再起作用,因为这些公司试图强迫人们使用其特定的搜索API。 现在我的问题是,是否仍然有可能刮擦例如必应图像。我开始尝试将XMLHttpRequests发送到https://www.bing.com/images/search?q=banana。我是用NodeJs库和等效的Browser做的。结果与以下请求相当

curl -A "Chrome/80.0.3987.149" "https://www.bing.com/images/search?q=banana"

当然有一些.jpg,但它们似乎是随机的,有时甚至与术语banana无关。主要目标是获得原始网址,Bing在该网址找到了图片。或通过浏览开发人员工具中的元素以某种方式获得与获得相同的视图。

有人了解最新的开源项目,或者我必须如何开始这一旅程?

4 个答案:

答案 0 :(得分:0)

我上次检查时,此project正常工作!我知道它是用Python编写的,但是如果您仅查找图像,则应该可以完成工作!希望能有所帮助:)

答案 1 :(得分:0)

您可以尝试使用Selenium Webdriver。使用自己的图片抓取工具应该很容易,并且它使用的浏览器如Firefox或Chrome。 Google和Bing不会阻止Selenium的访问,因为它是浏览器。

https://www.selenium.dev/

答案 2 :(得分:0)

对于您提到的用例,我强烈推荐puppeteer。我已经使用它来自动化几乎所有与浏览器相关的功能-填写约会,获取火车票以从单页应用程序中抓取数据等等。

基本上是无头的镶边,如果您以前使用过Javascript,那么您会发现自己很放心。该API非常简单,上手更加简单。

npm i puppeteer很好,您很需要它,并且可以做各种魔术:D

答案 3 :(得分:0)

我使用Python制作了一个可能会让您感兴趣的开源工具。它不仅可以抓取并下载图像,还可以将它们组织到文件夹中,作为训练/验证的子集,它可以删除重复的图像,并具有多种图像裁剪选项,例如较短的边,较长的边和智能裁剪。

在GitHub或Pip上进行检查:

https://github.com/deliton/idt

https://pypi.org/project/idt/

相关问题