2012-11-17 50 views
-1

我安裝了一切,因爲它說的FlickrAPI homepage但是當我嘗試運行:如何使用Python訪問Flickr API?

import flickrapi 
api_key = '1a4c975fa83048436a2086bcab7d2290' 
api_password = '5e069eae20e60297' 
flickrclient = flickrapi.FlickAPI(api_key, api_password) 
favourites = flickrClient.favorites_getPublicList(user_id='userid') 
photos = flickr.photos_search(user_id='[email protected]', per_page='10') 
sets = flickr.photosets_getList(user_id='[email protected]') 
for photo in favourites.photos[0].photo: 
print photo['title'] 

我從命令提示符此消息:

C:\Users\Desktop>python api.py 
Traceback (most recent call last): 
File "api.py", line 4, in <module> 
flickrclient = flickrapi.FlickAPI(api_key, api_password) 
AttributeError: 'module' object has no attribute 'FlickAPI' 

任何想法?我已經嘗試了幾乎所有的東西

+0

你的Python路徑中是否有另一個名爲'flickrapi'的文件? 「打印flickrapi .__文件_」會告訴你什麼? –

+0

我的python路徑中沒有另一個名爲flickrapi的文件。但是當我輸入print flickrapi .__ file__這個消息出現時:無法初始化設備PRN – user1832502

+1

'print'語句應該被添加到你的python腳本中,而不是你的控制檯。 :-) –

回答

2

FlickAPIFlickrAPI不一樣。您錯過了r

+0

你是正確的琥珀,這是一個打字錯誤我改變了,但也沒有工作.. 也我沒有另一個文件名爲flickrapi在我的Python路徑。但是,當我輸入print flickrapi .__ file__時,會出現以下消息:無法初始化設備PRN – user1832502

+0

因爲您將它鍵入命令shell而不是Python shell。 – Amber

+0

我想,在Python Shell還當我輸入: 打印flickrapi .__ FILE__ 此消息出現: >>>打印flickrapi .__ FILE__ 回溯(最近通話最後一個): 文件 「」,1號線,在 NameError:名字 'flickrapi' 沒有定義 ,當我鍵入: 進口flickrapi 此消息出現: >>>進口flickrapi 回溯(最後最近一次調用): 文件 「」,1號線,在 文件「flickrapi.py」,第4行,在 flickrclient = flickrapi.FlickrAPI(api_key,api_password) AttributeError:'module'對象沒有屬性'FlickrAPI' – user1832502

2

檔案C:\Users\XXXXXX\Desktop\FLICKR API\flickrapi.py不是部分flickrapi包。請重命名它,它掩蓋了真正的圖書館。目前它正在導入,而不是安裝包的

flickrapi程序包本身包含一個目錄,其中包含__init__.py文件。打印flickrapi.__file__應該導致以flickrapi\__init__.py結尾的路徑。

+0

@ user1832502:然後你沒有在正確的位置安裝flickrapi包。 –

+1

@ user1832502:使用['setuptools'](http://pypi.python.org/pypi/setuptools)通過'easy_install'命令安裝軟件包,請參閱[Windows notes](http://packages.python .org/distribute/easy_install.html#windows-notes)。 –

+0

@ user1832502:一旦安裝了'setuptools',只需運行'easy_install flickrapi',它就會被安裝在正確的位置。 –

0

在您的「flickrclient = flickrapi.FlickAPI」行中,您在FlickAPI中缺少'r'。

此外,在下一行,你*「USER_ID =‘用戶ID’」 *參數需要一個實際的用戶ID,如「999999 @ N99」

希望你發現&得到這個工作幾個月前! :)