Python3+Flickrapi爬取图片

在学习爬取图片的时候,师兄推荐了yahoo的flickr,发现真的是方便好用,就分享一下自己的使用过程。
参考的博客:https://www.cnblogs.com/kkyyhh96/p/5675087.html
https://blog.csdn.net/asukasmallriver/article/details/74779892

首先去https://www.flickr.com/注册登录。

然后在主界面左上菜单点击发掘,如下
Python3+Flickrapi爬取图片_第1张图片

这时右上出现更多,点击其下面的App Garden
Python3+Flickrapi爬取图片_第2张图片

建立应用程式
Python3+Flickrapi爬取图片_第3张图片

我选择了个人非商业
Python3+Flickrapi爬取图片_第4张图片

填写应用名及内容描述
Python3+Flickrapi爬取图片_第5张图片
此时邮箱会收到验证码,填写验证码,

这时就可以得到API Key和密钥
Python3+Flickrapi爬取图片_第6张图片
这里的API Key和密钥在我们之后爬虫使用flickrapi时使用哦。

python安装flickrapi

pip install flickrapi

这里写图片描述
之后就可以进行我们的图片爬取了,相当方便啊。

下面是我使用的一个简单代码供参考:

#coding:utf-8

import flickrapi
import urllib.request
import os
import sys

API_KEY = "你的API Key"
API_SECRET = "你的密钥"

#输入API的key和secret
flickr=flickrapi.FlickrAPI(API_KEY, API_SECRET, cache=True)
tag = "你需要爬取图片的标签名"
path = "你文件保存地址"
try:
    #爬取tags为tag的照片,这里可以根据自己的需要设置其它的参数,还可以根据text
    photos=flickr.walk(tags=tag, extras='url_c')
except Exception as e:
    print('Error')
count = 1
for photo in photos:
    #获得照片的url,设置大小为url_c(具体参数请参看FlickrAPI官方文档介绍)
    url=photo.get('url_c')
    if(str(url) == "None"):
        print("It's None!")
    else:
       #有效url进行爬取保存,文件名从1开始
        urllib.request.urlretrieve(url, path + str(count).zfill(7) + "." + os.path.basename(url).split(".")[1])
        count = count + 1
        print(url)

你可能感兴趣的:(图片爬取)