使用Python调用Flickr API抓取图片数据
Flickr是雅虎旗下的圖片分享網(wǎng)站,上面有全世界網(wǎng)友分享的大量精彩圖片,被認(rèn)為是專業(yè)的圖片網(wǎng)站。其API也很友好,可以實現(xiàn)多種功能。這里我使用了Python調(diào)用其API獲得了大量的照片數(shù)據(jù)。需要注意的是,要想登錄其網(wǎng)站,注冊成為開發(fā)者,并調(diào)用其API,需要FQ。但獲得的url可以不FQ查看。
首先需要先去Flickr注冊成為其開發(fā)者,創(chuàng)建應(yīng)用,獲得API_KEY和API_SECRET,其API網(wǎng)址在:https://www.flickr.com/services/api/
Flickr提供了多種開發(fā)工具進(jìn)行使用。這里使用Python開發(fā)工具。官方推薦的開發(fā)工具是Beej’s Python Flickr API. https://stuvel.eu/flickrapi
可以直接使用pip安裝工具進(jìn)行安裝,輸入flickrapi即可自動安裝好。
官方文檔在這里:https://stuvel.eu/flickrapi-doc/
爬取照片數(shù)據(jù)最好的方法是使用其walk方法。這個方法實質(zhì)上是調(diào)用了flickr.photos.search的接口,各種參數(shù)可以參見該API的介紹:https://www.flickr.com/services/api/flickr.photos.search.html
用好這個方法,輸入不同的參數(shù),就可以滿足大部分?jǐn)?shù)據(jù)挖掘的需要,包括時間、地理位置、照片類型等。
這里貼上一段簡單的代碼,僅供參考:
1 #coding:utf-8
2 import flickrapi
3 #輸入API的key和secret
4 flickr=flickrapi.FlickrAPI(api_key,api_secret,cache=True)
5 try:
6 #爬取text為'New York'的照片,這里可以根據(jù)自己的需要設(shè)置其它的參數(shù)
7 photos=flickr.walk(text='New York',extras='url_c')
8 except Exception as e:
9 print('Error')
10 for photo in photos:
11 #獲得照片的url,設(shè)置大小為url_c(具體參數(shù)請參看FlickrAPI官方文檔介紹)
12 url=photo.get('url_c')
13 print(str(url))
需要注意的地方在于,倘若出現(xiàn)循環(huán)的情況,可能是因為數(shù)據(jù)量太大,因此需要加一些限制條件限制,例如一次調(diào)用只調(diào)用一段時間內(nèi)的數(shù)據(jù),再分批次挖掘數(shù)據(jù)。
轉(zhuǎn)載請注明作者和出處——天靖居士:http://www.cnblogs.com/kkyyhh96/
海闊憑魚躍,天高任鳥飛
總結(jié)
以上是生活随笔為你收集整理的使用Python调用Flickr API抓取图片数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样理解人生观、价值观、世界观?
- 下一篇: 涨价至6799元起?iPhone 14细