gpt4 book ai didi

python - 仅本地理信息在 python 中可用时才运行

转载 作者:行者123 更新时间:2023-12-01 04:08:34 25 4
gpt4 key购买 nike

这是代码片段:

import flickrapi

api_key = "xxxxxxxxxxxxxxxxxxxxx"
secret_api_key = "xxxxxxxxxx"
flickr = flickrapi.FlickrAPI(api_key, secret_api_key)

def obtainImages3():

group_list = flickr.groups.search (api_key=api_key, text = 'Paris', per_page = 10)

for group in group_list[0]:

group_images = flickr.groups.pools.getPhotos (api_key=api_key, group_id = group.attrib['nsid'], extras = 'geo, tags, url_s')

for image in group_images[0]:
url = image.attrib['url_s']
tags = image.attrib['tags']

if image.attrib['geo'] != 'null':

photo_location = flickr.photos_geo_getLocation(photo_id=image.attrib['id'])
lat = float(photo_location[0][0].attrib['latitude'])
lon = float(photo_location[0][0].attrib['longitude'])

当且仅当图像连接有地理标签时,我想获取有关图像的信息。我尝试使用 if image.attrib['geo'] != 'null' 行来执行此操作,但我认为这不起作用。任何人都可以建议我可以做到这一点的方法吗,提前致谢!

最佳答案

将 if image.attrib['geo']!='null' 条件替换为 try 和异常 block ,如下所示。由于 API 以 JSON 格式返回数据,您可以使用以下方法检查 key 是否存在:

try:
image.attrib['geo']
photo_location=flickr.photos_geo_getLocation(photo_id=image.attrib['id'])
lat = float(photo_location[0][0].attrib['latitude'])
lon = float(photo_location[0][0].attrib['longitude'])
except KeyError:
pass

关于python - 仅本地理信息在 python 中可用时才运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35274234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com