我想通過REST請求訪問flickr API並下載大約1GB的元數據。 1張照片(也許更多)。 我想將它們存儲在.csv文件中,然後將它們導入到MySQL數據庫中作進一步處理存儲海量數據的最佳方法
我想知道處理這種大數據的最聰明的方法是什麼。我不確定的是如何在用Python訪問網站後將它們存儲起來,並將它們傳遞給.csv文件,然後從那裏傳遞到數據庫。這是一個大問號。
現在發生的事情(根據我的理解,請參閱下面的代碼)是爲每個photo
(每個被調用的URL爲250)創建一個dictionary
。這樣我就會得到儘可能多的照片字典(1 Mio或更多)。那可能嗎? 所有這些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)
我正在使用python 3.3。我不直接將數據傳遞到數據庫的原因是因爲我無法在我的操作系統x 10.6上運行mysql db的python連接器。
任何幫助非常感謝。 謝謝大家!
.csv中間人的使用效率低,耗時且棘手。爲什麼你的MySQL Python驅動程序不工作?我認爲這就是你應該首先解決的問題(如果可能的話),這是一個完全不同的問題。 – jayelm
我試圖解決並希望以後刻錄我的電腦並跳出窗口。但我在這裏,嘗試解決。 – Stophface
在這個網站上提出這個問題 - 你會在某個時候想要這個MySQL驅動程序,對吧? – jayelm