对于在计算机时间领域的人,无论在学习之中还是工作之中,数据都是很重要。最近在做一个关于分类的项目,怎奈何数据量很少,需要去各种网站去找相关图像。然而图像一张一张下载太耗时间,所以想能够批量下载。看了很多资料都说谷歌有反爬虫机制,故而就去研究了比较有种的谷歌爬虫方法。我试了三种方法是比较有效的,只不过各有好处。下面开始介绍三种方法,并附有代码、教程。

一、fatkun工具

这个工具是比较好用的,可以批量下载。这是个谷歌浏览器的插件,大家可以自行去谷歌商店下载。(如何下载教程一大堆),安装插件后,去谷歌搜索相关图像关键字,再点击插件下载。

优点:能够下载所有图像,还可以对图像大小进行的一定的筛选,也可以去除图像重复。

缺点: 需要手动一直加载才能加载所有图像。

二、google-images-download

这是github上的一个项目,五千多star,还是不错的。

github地址:链接

可以直接pip安装,可以去gitbub上看安装教程,很简单。

有关介绍:链接 这个知乎上已经讲的很清楚,根据上面安装与简单使用。

注意:一定要科学上网才能正常下载。

比较常用的参数有:

cf:此参数用于以某个文件的内容下载。文件中包含了各种参数的赋值。

f:表示图片的格式。用这个参数来指定图像格式。

l:表示要下载的图像上限

s:表示要下载的图像的尺寸大小

w:表示你要下载的图像上传的时间范围。

其他详细参数:链接

优点:能够下载很多图片,有很多参数可以指定,可以根据个人需求进行更改,可自行DIY,比较方便。

缺点:总感觉图片不能下载完全,很多图像下载不了。只能下载两三百张图像。

三、AutoCrawler

这个是gitbub上的另外一个项目有AutoCrawler,我尝试了下,感觉比较好用,根据关键字爬取NASA、谷歌网站上的图片,且不会重复。

项目地址:链接

下载项目后就开始安装:

1、在终端输入:pip install -r requirements.txt(要cd 到requirements.txt文件所在文件)  这条命令主要是来安装requirements.txt文件中所写的各种依赖包

2、打开项目中的 keywords.txt,在里面填写你要搜索的关键字。

3、最后运行main.py文件就行。

注意事项:

在项目main.py文件中,293 到300行代码是可以修改一些参数的。

--skip true        如果下载的目录已存在,则跳过关键字。 重新下载时需要这样做--threads 4        设置你要下载的使用线程数量--google true      是否使用谷歌搜索--naver true       是否使用naver搜索--full false       是否下载全分辨率图像而不是缩略图--face flase       搜索的模式,不太懂,默认就好

优点:可以下载搜索到的所有图片,中途不会阻断,可完全下载。且不会重复。而且可一在两个网站进行搜索(也可以自动加其他网站的,改代码就行),所有我觉得这个很好。

缺点:最大的缺点就是,搜索的关键字不能是中文和英文关键字不能有间隔,故只能一个单词。我也很奇怪,我每次换中文关键字就一直在重新搜索,总是没下载,,可是有的时候中文又可以下载,不知道什么原因。要是大家知道原因,麻烦告知。

就到这了。

谷歌图像爬虫方法总结与教程相关推荐

  1. python新手教程 从零开始-让你从零开始学会写爬虫的5个教程(Python)

    写爬虫总是非常吸引IT学习者,毕竟光听起来就很酷炫极客,我也知道很多人学完基础知识之后,第一个项目开发就是自己写一个爬虫玩玩. 其实懂了之后,写个爬虫脚本是很简单的,但是对于新手来说却并不是那么容易. ...

  2. 爬虫python教程百度云_Python爬虫比较基础的教程视频百度云网盘下载

    Python爬虫比较基础的教程视频百度云网盘下载,目录如下,给编程的朋友学习吧,请大家支持正版! QQ截图20180719110859.jpg (12.41 KB, 下载次数: 27) 2018-7- ...

  3. iframe异步加载_5种延迟加载图像的方法以帮助你提升网站性能与用户体验

    英文 | https://www.sitepoint.com/five-techniques-lazy-load-images-website-performance/翻译 | web前端开发(ID: ...

  4. Java爬虫之JSoup使用教程

    title: Java爬虫之JSoup使用教程 date: 2018-12-24 8:00:00 +0800 update: 2018-12-24 8:00:00 +0800 author: me c ...

  5. 几何画板中几种作函数图像的方法

    随着社会的发展,现代教学很多的地方都有了多媒体教学,这就需要一些教学软件的辅助了,几何画板就是其中之一.一些老师在使用几何画板的过程中,常常涉及到函数图象的绘制.因此,很多用户对这方面教程是非常的感兴 ...

  6. python两张图合成一张_Python图像处理实现两幅图像合成一幅图像的方法【测试可用】...

    本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法.分享给大家供大家参考,具体如下: 将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅 ...

  7. 【Python】【进阶篇】十二、Python爬虫的Xpath简明教程(十分钟入门)

    目录 十二.Python爬虫的Xpath简明教程(十分钟入门) 12.1 Xpath表达式 12.2 Xpath节点 12.3 节点关系 12.4 Xpath基本语法 12.4.1 基本语法使用 12 ...

  8. php 获取网络图片合成,PHP使用imagick扩展实现合并图像的方法

    本文实例讲述了PHP使用imagick扩展实现合并图像的方法.分享给大家供大家参考,具体如下: 女朋友做外贸的,最近需要做个产品册,要求是每张A4纸上有20个图片,我心想小case吧,哥们会点ps呢. ...

  9. php 扩展了imagick,PHP编程:PHP使用imagick扩展实现合并图像的方法

    <PHP使用imagick扩展实现合并图像的方法>要点: 本文介绍了PHP使用imagick扩展实现合并图像的方法,希望对您有用.如果有疑问,可以联系我们. PHP使用imagick扩展实 ...

最新文章

  1. 剖析SQL Server执行计划
  2. 关于客户端用ASP参生报表
  3. 这些世界罕见的地质奇迹,你认识几个!
  4. fedora 安装Linux源码,如何在 Fedora 29/30 上安装 VS Code
  5. Qt中QMap删除元素的简单使用
  6. 浏览器弹窗怎么设置显示url_谷歌浏览器Chrome76版本地址栏不显示HTTPS和WWW怎么办?...
  7. 利用INF安装服务启动 及 浅析瑞星行为检测、360主动防御
  8. Google 正在“跟踪”你
  9. (Java 多线程系列)java synchronized详解
  10. 基于数组实现Java 自定义Stack栈类及应用
  11. Linux虚拟文件系统(内核初始化二)
  12. 【重磅】这家技术贼牛的开源公司开始狂招人啦!
  13. java菜鸟mysql_十面阿里,菜鸟,天猫,蚂蚁金服面试精选73题:Java+Spring+MySQL+JVM.......
  14. Pollard‘s rho大数分解算法
  15. Visio中的字体对应Word中字体字号
  16. arch模型 python_【时间序列】波动率建模之ARCH模型
  17. JETT(三)-多Sheet渲染
  18. xinetd使用指南
  19. datawhale组队学习task9—文件与文件系统
  20. 【Debug日记】fatal: cannot lock ref ‘refs/heads/feature/CXX_Config‘: ‘refs/heads/feature‘ exists;

热门文章

  1. 【项目】小帽商城 II(一)
  2. 一行Python代码去除照片背景
  3. php删除头尾空,分享php中去除头尾空格的2种方法
  4. audio的自动播放
  5. sd卡突然所有文件都无法删除,在手机中会提示‘无法删除’,并且无法格式化,并且无法写入文件,
  6. Docker学习,这一篇博客就够了
  7. 两台电脑访问共享文件出现权限不够的问题
  8. r2_score与accuracy_score的区别
  9. 扫地机器人噪音响_硬件老兵拆机分析:扫地机器人噪音大小到底与何相关?
  10. python 可视化 ploty 画3dmesh网格图