点击“小詹学Python”,选择“置顶”公众号

重磅干货,第一时间送达

本文转载自Python全家桶,禁二次转载

除非你能在床上赚钱,否则就不要赖在床上!

——苍老师(别当真)

最近在Github发现一个基于google浏览器的爬虫项目,此项目是由美国大神2018年开源的。这个开源项目不需要使用者再去手写核心爬虫,只需要下载安装,然后传入一些配置参数即可。重要的能做到google图片的无限量爬取,只有不想爬的图片,没有爬不到的。下来就介绍一下这个牛逼的开源项目。

前沿:

这是一个命令行python程序,用于搜索Google Images上的关键字/关键短语,并可选择将图像下载到您的计算机。还可以从另一个python文件调用此脚本。

如果只想为每个关键字下载最多100个图像,则无需安装依赖项。如果您想要每个关键字超过100个图像,需要同时安装Selenium库chromedriver。故障排除部分中的详细说明。

Github地址:https://github.com/hardikvasa/google-images-download

项目介绍: google-images-download

此项目开源到现在一年的时间,就已经收割了3900+star,真的不得不跪拜大神的能力,能将一个简单的爬虫做到如此牛逼的地步。

当然,这么热门的项目,也不是一个人短时间完成的。Github上显示,此项目的贡献者就高达26人,代码总共提交了133次。此项目能收到这么多star,还是在于更多的贡献者和后期的不断维护升级。

这个项目在github也做了具体的使用说明和介绍,大家可以根据自身的项目情况进行配置即可(为了方便阅读,通过google翻译为中文)。

关于此项目使用这里多逼逼几点:


  • 版本要求

    该项目作者GitHub上说python2x与Python3x都可以,推荐Python3。

  • 项目使用:有2种使用方式

方式一:使用pip安装报的方式(推荐)

pip install  google_images_download

方式二:手动下载

git clone https://github.com/hardikvasa/google-images-download.git
cd google-images-download && sudo python setup.py install

  • 图片数量:

    google搜索关键字首页默认100张图片,要抓取更多的图片,就得增加翻页功能。此项目已经实现了翻页功能,只需要使用者同时安装Selenium库chromedriver,代码里面配置即可。

  • 参数方式:

    原作者对参数的传递形式和每一个参数都做了详细的说明,大家可以github详细了解。

使用案例

这里给大家分享一下如何将此项目用来爬取去自己需要的图片。原作者介绍了几种关键字输入的方式。这里以文件读取的形式将关键字传入。这里爬取图片的数量选为500张,需要下载、安装Selenium库chromedriver。

1、搭建爬虫环境

pip install selenuium
pip install requests
pip install google_images_download

2、下载chromedriver驱动

因为下载的图片数量大于100,所以还需要在安装chromedriver,在代码配置chromedriver位置即可。

首先要查看自己电脑上安装的google浏览器版本号

▲谷歌浏览器版本号▲

github给的下载路径国内是无法下载的,不过小编已经将大多数驱动下载下来,需要的可以后台私信获取。当然也可以通过别的渠道获取。

▲github给的下载地址▲

在chrome官网找到与本机的google浏览器版本号一致的chromedriver

▲chrome官网对应的驱动版本号▲

下载完后,安装的路径根据操作系统自己指定。我使用的时win系统,安装在了D盘,具体路径如下:

"D:\download\chromedriver.exe"

3、编辑爬取的关键字文件:

如图所示,只需要在keywords.csv文件里面按图所示填写对应老师的名称即可。

4、代码展示:


import csv
import os
import sys

from google_images_download import google_images_download

# 实例化一个下载器
downloader = google_images_download.googleimagesdownload()

BASE_DIR = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, BASE_DIR)

# 读取关键字文件
csv_file = csv.reader(open(BASE_DIR + "\google_images\keywords.csv", "r"))

def download_images(csv_file):
   """
   传入关键字等参数,下载对应的图片文件
   files: 读取的关键字文件
   limit: 爬取的图片数量
   print_urls: 是否显示爬取的图片url
   chromedriver: chromedriver安装的路径。不填此参数,默认爬取前100张图片
   output_directory:自定义保存图片的位置
   """
   for key_word in csv_file:
       arguments = {"keywords": key_word, "limit": 500, "print_urls": True,
                    "chromedriver": "D:\download\chromedriver.exe",
                    "output_directory": BASE_DIR + "\\files\\"}

downloader.download(arguments)

if __name__ == '__main__':
   download_images(csv_file)

运行:python google_download.py,你就会发现有源源不断的老师图片进入你的硬盘,接下来就是坐等爬完所有你要的图片了。

此文章主要还是给大家分享这个开源项目,至于使用,本文只是做了一个简单的使用,想要了解更多的,可以直接在github查看。在实际中,我们可以利用这个python脚本去爬取基于google的任何图片了。

今日互动:第一期打卡即将结束,很多小伙伴兑奖了,没兑奖的你想兑换哪一本书呢

?长按二维码可以关注噢

爬一爬那些年你硬盘存过的老师相关推荐

  1. 爬一爬那些年你硬盘存过的“老师”

    作者 | PayneLi 转载自Python全家桶(ID: python-0321) 人工智能的现状及今后发展趋势如何?  https://edu.csdn.net/topic/ai30?utm_so ...

  2. 用Python爬一爬那些年你硬盘存过的老师们,太方便啦!

    最近在Github发现一个基于google浏览器的爬虫项目,此项目是由美国大神2018年开源的.这个开源项目不需要使用者再去手写核心爬虫,只需要下载安装,然后传入一些配置参数即可.重要的能做到goog ...

  3. 用Python爬一爬那些年你硬盘存过的老师

    最近在Github发现一个基于google浏览器的爬虫项目,此项目是由美国大神2018年开源的.这个开源项目不需要使用者再去手写核心爬虫,只需要下载安装,然后传入一些配置参数即可.重要的能做到goog ...

  4. python爬虫什么意思-这样学Python爬虫,想爬什么爬什么

    原标题:这样学Python爬虫,想爬什么爬什么 你知道怎么学爬虫吗?正确的入门姿势在这里!只要学好了Python爬虫,真的是可以想爬什么爬什么哟,像什么美女图片啦,美食图片啦,美景图片啦.(小编可不知 ...

  5. python爬网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...

    网易云音乐这款音乐APP本人比较喜欢,用户量也比较大,而网易云音乐之所以用户众多和它的歌曲评论功能密不可分,很多歌曲的评论非常有意思,其中也不乏很多感人的评论.但是,网易云音乐并没有提供热评排行榜和按 ...

  6. 爬取百大弹幕,大家还是喜欢上罗老师的课!

    原来大家这么喜欢上课 1.成果展示 2.源代码展示及使用 2.1获取弹幕文本 2.2生成词云 1.成果展示 部分弹幕爬取 可爱和性感在猛男面前 不堪一击 试图招手让摄像走开( 讲道理,00子是融入小破 ...

  7. python爬虫网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...

    网易云音乐这款音乐APP本人比较喜欢,用户量也比较大,而网易云音乐之所以用户众多和它的歌曲评论功能密不可分,很多歌曲的评论非常有意思,其中也不乏很多感人的评论.但是,网易云音乐并没有提供热评排行榜和按 ...

  8. 浪姐爆火!“爬一爬”背后不为人知的数据!

    黑马程序员视频库 播妞QQ号:3077485083 传智播客旗下互联网资讯.学习资源免费分享平台 今年上半年最火的综艺非<乘风破浪的姐姐>(简称浪姐)莫属,第一期播出就爆了好几个热搜.不得 ...

  9. Python爬虫 - 爬天爬地爬空气

    1.前言   Python爬虫能干什么? 这么说吧:爬天爬地爬空气!   哈哈,其实也没这么邪乎的!爬虫给我的感觉就是:数据的价值.互联网如此发达,越来越多的有效数据被利用起来.   不过,希望每个人 ...

最新文章

  1. Windows 08 R2_组策略
  2. 面试归来,我有一个重要发现……
  3. 打开CMDLINE中的 ” earlyprink “ 参数
  4. xvfb-run: error: xauth command not found 解决方式
  5. linux 模块化编译,手把手教Linux驱动1-模块化编程 module
  6. 几个SpringCloud常见面试题及答案
  7. hbase的shell客户端中不同符号的含义
  8. C语言 sprintf 函数 - C语言零基础入门教程
  9. 实现光晕效果_马自达6车灯升级激光四透镜实现四近四远光
  10. java中String字符串的替换函数:replace与replaceAll的区别
  11. java 线程 listview_android使用Thread实现json数据的传递,并且使用ListView显示
  12. git21天打卡day4-查看仓库地址
  13. 基于深度学习的青菜病害区域图像语义分割与定位
  14. k8s自定义指标HPA实践(微服务基于自定义指标自动扩缩容的实践)附demo
  15. 装文件存储服务器Fastdfs
  16. L1-046 整除光棍 (20 分)—团体程序设计天梯赛
  17. H5 新特性之 fileReader 实现本地图片视频资源的预览
  18. 很有意思的HDB3编解码--C++实现
  19. 伟创ac80b变频器故障代码_安川变频器故障代码和安川变频器报警详解
  20. 【转载】MAC帧在经过路由器时,其源地址和目的地址会发生改变,路由器的目的地址会出现子在MAC帧中”如何理解?

热门文章

  1. redis报错(error) LOADING Redis is loading the dataset in memory
  2. 大数据主题分享第三期 | 基于ELK的亿级实时日志分析平台实践
  3. Nginx+Lua(OpenResty) HelloWorld
  4. Mysql之乐观锁悲观锁:乐观锁检查数据状态 悲观锁更新时锁定数据
  5. PHP封装对象名字的思路
  6. python return返回值在计算机内的存储形式_Python如何执行存储过程,获取存储过程返回值...
  7. 江西财经计算机应用杨教授,江西财经大学信息管理学院研究生导师介绍:刘德喜...
  8. 南京晓庄学院java实验五_讲座|城市文化与南京世界“文学之都”的建设
  9. pat根据中序遍历和先序遍历_算法题399:从前序与中序遍历序列构造二叉树
  10. c在linux中怎样执行文件,如何在Linux中编译和运行C/C+程序,简单示例教懂你