最近收集了一些随机图片网址,想把这些图片全部抓取下来,到网上搜了搜,都只有抓取链接的,没有抓取图片的,这时正好看到了VariousArtist的抓图自动机,赶紧下了个Python(我是C++党)来试试,结果发现……

这份代码实在是太!鸡!肋!了!,运行一次只能抓一张图片,如果靠人工点的话岂不是要点到地老天荒,于是,我编写了一个.bat程序和一个C++程序,用来配合那份Python代码,一次抓取多张图片。

具体步骤如下:

1.配置好Python和C++废话!

2.在E盘中新建一个文件夹Photo(也可以不放在E盘里,但是后面需要根据自己存放Photo文件夹的位置稍微改变一下(建议放在空间大的磁盘里,不然抓取图片抓到一半内存不够就尴尬了))

3.在Photo文件夹里新建一个photo.txt文件,在里面写上如下代码:

from urllib import request

import os

import time

import hashlib

linkn = 'https://api.3ewl.cc/acg/img.php'

path = os.getcwd()

print ('Current Work Path is:',path)

ftcnt = 0

def filecount():

filecount = int(os.popen('dir /B |find /V /C ""').read())

return (filecount)

def md5sum(filename):

f = open(filename, 'rb')

md5 = hashlib.md5()

while True:

fb = f.read(8096)

if not fb:

break

md5.update(fb)

f.close()

return (md5.hexdigest())

def delfile():

all_md5 = {}

filedir = os.walk(os.getcwd())

for i in filedir:

for tlie in i[2]:

if md5sum(tlie) in all_md5.values():

os.remove(tlie)

else:

all_md5[tlie] = md5sum(tlie)

oldf = 0

while True:

if (oldf + ftcnt) % 100 == 0:

print('Cleaning Double Files.')

oldf = filecount()

print(oldf, 'Files Before Removal.')

delfile()

print(filecount(), 'Files After Removal.')

print('Deleted ', oldf - filecount(), 'Files.')

oldf = filecount()

ftcnt = ftcnt + 1

if ftcnt % 40 == 0:

print('Fetching',ftcnt,'th Picture from ',linkn,'...')

request.urlretrieve(linkn,path + '\\' + str(time.time()) + '.jpg')

其中第五行的https://api.3ewl.cc/acg/img.php是一个随机图片链接,可以替换为其他的随机图片链接。

编写好之后,将这个文件重命名为photo.pyw。

4.在Photo文件夹里新建一个文件bat.txt,在里面写下如下代码:

start E:\Photo\photo.pyw

(如果你的Photo文件夹没放在E盘里,请自行修改代码!)

编写好之后,将这个文件重命名为bat.bat。

5.在Photo文件夹里新建一个文件cpp.cpp,在里面写下如下代码:

#include

#include

using namespace std;

int main()

{

int t;

cout<

cin>>t;

for(int i=1;i<=t;i++)

system("cmd.exe /c \"E:\\Photo\\bat.bat\"");

return 0;

}

(如果你的Photo文件夹没放在E盘里,请自行修改代码system("cmd.exe /c \"E:\\Photo\\bat.bat\"");!)

编写好之后,编译运行这个C++代码,然后会提示你输入次数,输入后回车确定,接下来就是耐心等待程序运行完毕,图片就抓取完成啦!

程序运行完毕后,打开Photo文件夹,你就会发现,有许多图片静静地躺在这个文件夹里啦!

(因为这个程序有去重功能,所以抓取的越多越慢,建议一次抓取\(100\)~\(300\)次左右,当然,如果你家电脑配置足够好,那都随便啦!)

最后附上我收集的随机图片网址:

https://acg.toubiec.cn/random

http://jump2.bdimg.com/safecheck/index?url=rN3wPs8te/pL4AOY0zAwhwPDt1WAsCMMTkZGmy7i0bP6XsqIg2Wl6PHQ2HhF3NZelyIdz9v+qXV+GAYqxfjnDPXCnfW1ESuj6A3tY9na+QlFB65G9e67GL0F1G10srGPylUecCg3xQhV92TAmoWV0zA8Zu4mdgY0

http://www.dmoe.cc/random.php

http://api.apizz.cn/ecyt/api.php

https://yesos.cn/api/acgurl.php

https://api.wuzuhua.cn/dm

https://acg.yanwz.cn/acg.php

https://acg.yanwz.cn/menhera/api.php

https://acg.yanwz.cn/api.php

https://www.xiaobaibk.com/api/acg

https://www.niubai.net/yanshi/acgapi/acg.php

http://api.mtyqx.cn/api/random.php

http://api.mtyqx.cn/tapi/random.php

https://www.xwboke.cn/api/api.php

https://yun.iqinxiu.com/moe/a/

https://yun.iqinxiu.com/moe/b/

https://yun.iqinxiu.com/moe/c/

https://yun.iqinxiu.com/moe/d/

python随机图片api_抓取随机图片相关推荐

  1. Python利用bs4批量抓取网页图片并下载保存至本地

    Python利用bs4批量抓取网页图片并下载保存至本地 使用bs4抓取网页图片,bs4解析比较简单,需要预先了解一些html知识,bs4的逻辑简单,编写难度较低.本例以抓取某壁纸网站中的壁纸为例.(b ...

  2. python 利用requests库抓取网站图片

    截图放在下方: 我们来看下我们要的图片都在哪 框起来这些图就是我要的,数量多的不得了,看来这个网站积累了很久了,现在我们要用5分钟时间来拿到所有图片 接下来让我们看下源代码来解析一下这些图片的地址吧. ...

  3. python获取网页图片_python抓取网页中的图片示例

    python抓取网页中的图片示例 代码如下: #coding:utf8 import re import urllib def getHTML(url): page = urllib.urlopen( ...

  4. python抓取网站图片_利用python抓取网站图片

    看了网上关于python抓取网站图片的例子,所以自己也尝试着写一个,但是发现这个网站的src不是标准的路径,需要自己添加前面的目录地址,尝试了几次也不成功,所以希望有经验的朋友指导下. 本人是初学者, ...

  5. python scrapy框架 抓取的图片路径打不开图片_Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码...

    大家可以在Github上clone全部源码. 基本上按照文档的流程走一遍就基本会用了. Step1: 在开始爬取之前,必须创建一个新的Scrapy项目. 进入打算存储代码的目录中,运行下列命令: sc ...

  6. python爬虫学习基础教程,批量抓取美女图片!

    python的抓取功能其实是非常强大的,当然不能浪费,呵呵.下面就与大家分享一个python写的美女图自动抓取程序吧! 其中用到urllib2模块和正则表达式模块.下面直接上代码: 用python批量 ...

  7. python抓取网站图片_python抓取图片示例 python抓取网页上图片

    python抓取网页上图片 这个错误时是什么意思 下面是代码 import re import urllib.request imp正则表达式匹配的url有错误 for x in add: print ...

  8. python抓取美女图片实例

    原文链接:python抓取美女图片实例 python脚本编程,和php类似,主要是作web项目及脚本抓取图片和文章.日志分析等,python比较有名的web开发框架有Django.Tornado.we ...

  9. python抓取图片_Python3简单爬虫抓取网页图片

    现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到 ...

最新文章

  1. CRC校验和芯片ID
  2. linq2db.mysql_Linq to SQlite简单示例(linq2db版)
  3. Spark MLlib 机器学习
  4. Linux内核——百度百科
  5. 电子商务实战课程-张晨光-专题视频课程
  6. 各种优秀依赖库,大赞
  7. C# 设置Word文档背景(纯色/渐变/图片背景)
  8. 从源码角度解释 fragment 坑(一)
  9. scrapy Request
  10. QCon2016 上海会议汇总(1) - 前端技术实践
  11. 安卓学习-界面-ui-Spinner
  12. C++中的extern C【转】
  13. BZOJ1196 [HNOI2006]公路修建问题 【二分 + Kruskal】
  14. 《强化学习》-读书笔记-第三章 有限马尔科夫决策过程
  15. KELL 平台 DM9000驱动
  16. 卡诺模型案例分析_客户满意之卡诺模型
  17. 一个程序员的十年程序人生感悟
  18. 生日快乐 吉他谱-李雪莱
  19. tradingView警报设置
  20. cas246516-15-4|1-羧戊基-2,3,3-三甲基吲哚-5-硫酸钾花菁染料-齐岳生物

热门文章

  1. bzoj2752 高速公路
  2. Ubuntu16.04下配置laravel
  3. launch images source启动图删除后上下有黑边
  4. StringBuffer与StringBuilder的作用与区别
  5. [Qt]用QItemDelegate的来修改QStandardItem字体颜色
  6. orchard文档之-搜索和索引
  7. (篇三)C语言的冒泡排序多解、选择排序、数组合并、矩阵相加
  8. python return函数_理解Python函数中的return关键字
  9. python下载网页中的pdf文件_Python读取网页上的pdf文件,输出字符串
  10. 分别用邻接矩阵和邻接表实现图的深度优先遍历和广度优先遍历_数据结构与算法:三十张图弄懂「图的两种遍历方式」...