我想用REST请求访问flickrapi并下载大约100万张照片的元数据(可能更多)。
我想将它们存储在一个.csv文件中,然后导入到MySQL数据库中进行进一步处理
我想知道处理如此大的数据最聪明的方法是什么。我不确定的是,在用Python访问网站后,如何存储它们,将它们传递到.csv文件,然后从那里传递到数据库。这是一个很大的问号。在
现在发生的事情(对于我的理解,请参阅下面的代码)是为每个photo创建一个dictionary(每个调用的URL有250个)。这样的话,我最终得到的词典和照片一样多(100万或更多)。有可能吗?
所有这些dictionaries都将被追加到一个列表中。我能把那么多字典加到一个单子上吗?我想将字典追加到列表中的唯一原因是,从列表(每行)保存到.csv文件似乎更容易。在
你应该知道的是,我是一个完全的编程初学者,python等等。我的职业完全不同,我刚刚开始学习。如果你需要进一步的解释,请告诉我!在#accessing website
list = []
url = "https://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=5...1b&per_page=250&accuracy=1&has_geo=1&extras=geo,tags,views,description"
soup = BeautifulSoup(urlopen(url)) #soup it up
for data in soup.find_all('photo'):
dict = {
"id": data.get('id'),
"title": data.get('title'),
"tags": data.get('tags'),
"latitude": data.get('latitude'),
"longitude": data.get('longitude'),
}
print (dict)
list.append(dict)
我正在使用python3.3。我之所以不直接将数据传递到数据库,是因为我无法在OSX10.6上运行PythonConnecterforMySQL数据库。在
非常感谢任何帮助。
谢谢大家!在