AotucCrawler 快速爬取图片
AotucCrawler 快速爬取图片
今天介绍一款自动化爬取图片项目。
GitHub: https://github.com/YoongiKim/AutoCrawler
Google, Naver multiprocess image web crawler (Selenium)
关键字
- 爬虫网站:Google、Naver (美、韩两大搜索引擎)
- 运行方式:Multiprocess(多进程)
- 爬取格式:image (图片)
- 基于自动化工具:Selenium (不解释)
如何使用
Git克隆
AutoCrawler项目到本地自行安装
Chrome浏览器安装依赖
> pip -r requirements.txt
certifi: 包含了很多可信任知名公司的证书/公钥。chardet:提供自动检测字符编码的功能。idna: 提供"对于RFC5891中定义的IDNA协议(Internationalised Domain Names in Applications)的支持"。requests: 依赖于上面三个基础库,他主要用于根据图片链接下载图片。selenium: 用于启动浏览器,爬取图片链接。webdriver-manager: 用来管理selenium浏览器驱动的项目。
仔细分析别人项目,不管是源码还是依赖库都会有收获。
webdriver-manager就是我发现的一个宝藏项目,它简化的浏览器驱动的管理。
- 打开
keywords.txt文件,编写爬取的关键字。
cat
dog
- 运行
main.py文件
> python main.py
参数说明:
--skip true:如果下载的关键字已经存在,是否跳过关键字,重新下载时需要设置。
--threads 4: 下载使用线程数量
--google true: 从google.com 下载。
--naver true: 从naver.com 下载。
--full false: 下载全分辨率图像而不是缩略图 (慢)。
--face false: Face search mode。
--no_gui auto: 使用 GUI 模式. (headless模式) 全分辨率模式可以加速, 但是缩略图模式不稳定。 默认auto模式,如果full=false 默认使用使用GUI,如果full=true默认Headless模式。(可用于docker linux系统)。
--limit 0: 设置最大图片下载范围。 (0: 无限制)
--proxy-list: 逗号分隔的代理列表,如: socks://127.0.0.1:1080, http://127.0.0.1:1081,每个线程从列表中随即选择一个。
例如:
> python main.py --threads 2 --google true --naver false --full false --limit 50

- 爬取的图片保存于
downloads/目录。

小结
因为使用的是Google网站,没有梯子的同学有点郁闷。项目本身并不复杂,两个python文件加一起不到1000行代码,我们完全可以花点时间替换为国内可访问的搜索引擎。
下载图片只是为了欣赏猫猫狗狗吗?当然不是,我们可用下载的图片训练 AI。
AotucCrawler 快速爬取图片的更多相关文章
- Java jsoup爬取图片
jsoup爬取百度瀑布流图片 是的,Java也可以做网络爬虫,不仅可以爬静态网页的图片,也可以爬动态网页的图片,比如采用Ajax技术进行异步加载的百度瀑布流. 以前有写过用Java进行百度图片的抓取, ...
- python如何使用request爬取图片
下面是代码的简单实现,变量名和方法都是跑起来就行,没有整理,有需要的可以自己整理下: image2local: import requests import time from lxml import ...
- [python爬虫] 爬取图片无法打开或已损坏的简单探讨
本文主要针对python使用urlretrieve或urlopen下载百度.搜狗.googto(谷歌镜像)等图片时,出现"无法打开图片或已损坏"的问题,作者对它进行简单的探讨.同时 ...
- scrapy爬虫,爬取图片
一.scrapy的安装: 本文基于Anacoda3, Anacoda2和3如何同时安装? 将Anacoda3安装在C:\ProgramData\Anaconda2\envs文件夹中即可. 如何用con ...
- scrapy爬虫系列之三--爬取图片保存到本地
功能点:如何爬取图片,并保存到本地 爬取网站:斗鱼主播 完整代码:https://files.cnblogs.com/files/bookwed/Douyu.zip 主要代码: douyu.py im ...
- 孤荷凌寒自学python第八十二天学习爬取图片2
孤荷凌寒自学python第八十二天学习爬取图片2 (完整学习过程屏幕记录视频地址在文末) 今天在昨天基本尝试成功的基础上,继续完善了文字和图片的同时爬取并存放在word文档中. 一.我准备爬取一个有文 ...
- 孤荷凌寒自学python第八十一天学习爬取图片1
孤荷凌寒自学python第八十一天学习爬取图片1 (完整学习过程屏幕记录视频地址在文末) 通过前面十天的学习,我已经基本了解了通过requests模块来与网站服务器进行交互的方法,也知道了Beauti ...
- 爬取图片过程遇到的ValueError: Missing scheme in request url: h 报错与解决方法
一 .scrapy整体框架 1.1 scrapy框架图 1.2 scrapy框架各结构解析 item:保存抓取的内容 spider:定义抓取内容的规则,也是我们主要编辑的文件 pipelines:管道 ...
- python网络爬虫之使用scrapy爬取图片
在前面的章节中都介绍了scrapy如何爬取网页数据,今天介绍下如何爬取图片. 下载图片需要用到ImagesPipeline这个类,首先介绍下工作流程: 1 首先需要在一个爬虫中,获取到图片的url并存 ...
随机推荐
- Java基础之(五):数据类型
Java快捷键 首先我们先来介绍下IDEA的一些快捷键 psvm=public static void main(String[] args) {} sout=System.out.println(& ...
- Java(46)类加载器
作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15201673.html 博客主页:https://www.cnblogs.com/testero ...
- python的参数传递是值传递还是引用传递?都不是!
[写在前面] 参考文章: https://www.cnblogs.com/spring-haru/p/9320493.html[偏理论,对值传递和引用传递作了总结] https://www.cnblo ...
- vue.$nextTick实现原理
源码: const callbacks = [] let pending = false function flushCallbacks () { pending = false const copi ...
- Vue3学习(八)之 Vue CLI多环境配置
一.前言 这里相对于之前就没那么麻烦了,通俗点说就是使用配置文件来管理多环境,实现环境的切换. 二.实现切换 1.增加开发和生产配置文件 在web的根目录下,创建开发环境切换配置文件.env.dev, ...
- 【UE4 C++ 基础知识】<6> 容器——TMap
概述 TMap主要由两个类型定义(一个键类型和一个值类型),以关联对的形式存储在映射中. 将数据存储为键值对(TPair<KeyType, ValueType>),只将键用于存储和获取 映 ...
- 在kivy中加图片
from kivy.app import App from kivy.uix.scatterlayout import ScatterLayout from kivy.uix.image import ...
- 软工博客之关于CSDN的移动端软件测评
关于CSDN的移动端软件测评 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 软件测评作业 我在这个课程的目标 不求变强,只求做好,成为一颗有用的 ...
- 请问为什么要用三极管驱动mos,直接用mos有什么缺点呢?
可能无法完全导通,电流可能过小使导通所需时间变长,最终导致发热严重 回复 举报 csaaa DIY七级 3# 发表于 2016-7-12 14:11:59 直接驱动mos也没什么问 ...
- 如何清理history
工作中,需要清理history 清理当前会话历史命令 history -c 清理当前用户所有历史命令 echo > .bash_history #在用户主目录执行此操作