2014-10-19 65 views
1

我正在使用python-instagram API,并且正在显示一些带搜索标签的图像!Python将图像保存到文件夹中

而不是显示,我想保存这些图像,以便它可以用于进一步的分析。

可能吗?我是python和使用API​​的新手。

这里是我的代码片段其做到这一点:

@route('/tag_search') 
def tag_search(session): 
    access_token = session.get('access_token') 
    content = "<h2>Tag Search</h2>" 
    if not access_token: 
     return 'Missing Access Token' 
    try: 
     api = client.InstagramAPI(access_token=access_token) 
     tag_search, next_tag = api.tag_search(q="catband") 
     tag_recent_media, next = api.tag_recent_media(tag_name=tag_search[0].name) 
     photos = [] 
     for tag_media in tag_recent_media: 
      photos.append('<img src="%s"/>' % tag_media.get_standard_resolution_url()) 
     content += ''.join(photos) 
    except Exception, e: 
     print e  

Thanx提前:)

+4

好吧,既然你有图像的URL,合乎逻辑的做法是使用所述URL下载图像。 – 2014-10-19 21:05:22

+3

从网址下载文件很容易。看到这个 - http://stackoverflow.com/questions/22676/how-do-i-download-a-file-over-http-using-python – 2014-10-20 01:24:05

+2

@Puciek这确实是一个好主意,我会研究一下。 – 2014-10-20 18:18:54

回答

3

的意见,和其他资源的一些帮助后,我发现因为我有图像的URL ,我可以用它来下载!

其中使用该文库是“的urllib” 我使用的计数器变量保存图像在所述文件是相同的目录和在1.JPG,2.JPG的形式等等,等等。

下面是修改代码:

@route('/tag_search') 
def tag_search(session): 
access_token = session.get('access_token') 
content = "<h2>Tag Search</h2>" 
if not access_token: 
    return 'Missing Access Token' 
try: 
    api = client.InstagramAPI(access_token=access_token) 
    tag_search, next_tag = api.tag_search(q="selfie") 
    tag_recent_media, next = api.tag_recent_media(tag_name=tag_search[0].name) 
    photos = [] 
    count = 0 
    for tag_media in tag_recent_media: 
     photos.append('<img src="%s"/>' % tag_media.get_standard_resolution_url()) 
     urllib.urlretrieve(tag_media.get_standard_resolution_url(), `count`+".jpg") 
     count = count + 1 
    content += ''.join(photos) 
except Exception, e: 
    print e    

希望这有助于:)

+2

这也是很好的检查它作为帮助你的答案;) – 2014-10-21 12:07:42

+2

是的,我将只允许15小时后。你可以放弃它。 :) – 2014-10-21 19:50:31

相关问题