0
我有这个数据结构。美丽的汤解析XML
<photo id="123" owner="12345" secret="xx" server="12" farm="4" title="109L_0195"
ispublic="1" isfriend="0" isfamily="0" views="0" tags="military czechrepublic kmk koně
humpolec všestrannost humpoec vysocinaregion" latitude="49.550933" longitude="15.36652"
accuracy="16" context="0" place_id="tg5cqdpWW7q18rE" woeid="790349" geo_is_family="0"
geo_is_friend="0" geo_is_contact="0" geo_is_public="1">
<description>
Kvalifikační kolo KMK - všestrannost 18.7.2014 - Humpolec
</description>
</photo>
<photo id="123" owner="06" secret="xx" server="12" farm="4"
title="Ytterligare en bild ifrån inspelningen av Johan Stjerquist's video: Nudist
Javisst." ispublic="1" isfriend="0" isfamily="0" views="0" tags="square squareformat
iphoneography instagramapp uploaded:by=instagram" latitude="56.171184"
longitude="14.741144" accuracy="16" context="0" place_id="u4MzsN9ZW7KnPWo"
woeid="898740" geo_is_family="0" geo_is_friend="0" geo_is_contact="0" geo_is_public="1">
<description/>
</photo>
它是一个关于通过Flickr API访问的照片的信息的和平。 我想提取以下信息: ID 标题 标签 经度纬度
,我试图通过这个来完成。
url = "https://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=5....b&per_page=250&accuracy=1&has_geo=1&extras=geo,tags,views,description"
soup = BeautifulSoup(urlopen(url))
for data in soup.find_all('photo'):
print (data.attrs['id' , 'title' , 'tags' , 'latitude' , 'longitude' , 'accuracy'])
这没有奏效。 attrs
只接受一个参数。看看BeautifulSoup
的文档,它看起来像没有其他工具可以帮助我获取所有信息,或者我误会了(http://www.crummy.com/software/BeautifulSoup/bs4/doc/)?我试图通过p
代替attrs
,但那也没有奏效。
任何想法,我可以使用的命令?
对不起,这有点搞砸了。可以编辑它了。这里编辑的版本。 我对python非常陌生,所以如果我要提出一些愚蠢的话,请原谅我。返回的值也存储在字典中,对吗?如果我想给我的第一个'loop'提供一个带有很多链接的'list'来迭代(所以'url'将会是一个带有不同URL的列表),它会把返回的'values'附加到' dic'或覆盖它,因为每个链接将被单独调用 – Stophface
@Christoph好,这个代码只是演示如何抓住每张照片的特定属性并打印出来。如果你愿意,你可以将它们收集到列表中 - 取决于你期望的目标是什么。 – alecxe
多数民众赞成多说,我想要做什么http://stackoverflow.com/questions/24876399/smartest-way-to-store-huge-amounts-of-data/24876613?noredirect=1#comment38639634_24876613 – Stophface