的人誰用蒸汽處理可能已經聽說過的網站的那樣:http://csgo.steamlytics.xyz/NodeJS |汽市場分析
對於學習我,雖然我會試着像他們所要做的有些相同的API,但我有一個問題。我已經做了部分,它獲取每個項目名稱,並請求蒸汽市場歷史URL並從那裏獲取數據並將其提交給數據庫。有6844個項目,我爲每個請求設置了2秒的超時時間,所以如果我做了正確的數學計算,則需要大約6個小時才能將所有項目數據提交到數據庫。問題在這裏,有沒有一種可能的方法來加快這個過程?關於steamlytics網站,他們每12小時更新數據,所以我不認爲他們每次更新價格6小時。這裏是我的代碼:
for (var i = 0; i < names.items.length; i++) {
setTimeout(function(i) {
var name = names.items[i].market_hash_name;
scrapeItems(names.items[i].market_hash_name, function(data) {
var total = 0;
var price = 0;
var average = 0;
var count = 0;
var data = JSON.parse(data);
for (var i = 0; i < data.prices.length; i++) {
var dataa = {
name: name,
date: data.prices[i][0],
price: data.prices[i][1],
sales: data.prices[i][2]
};
connection.query('INSERT INTO item_histories SET ?', dataa, function(err) {
if (err) {
console.log(err);
} else{
}
});
}
});
console.log("Inserted data to DB " + name);
}, i * 2000, i);
}
謝謝你的答案,但我不明白他怎麼能對所有項目得到平均,它只顯示最近完成的,它需要一個較長的方式通過+在JSON我找不到讓所有項目價格)? –
是的,他每隔3秒檢查一次這個端點。所以他一直在24/7全天候檢查。經過一段時間(我相信超過1個月),他收集了太多的數據,他可以給出準確的價格。請參閱[API文檔](http://csgo.steamlytics.xyz/api)。在收集完所有這些數據之後,他正在對數據集運行算法以獲得準確的價格。 – igeligel
嘿,但我的網址不怎麼好?它有價格2015-2017(我不相信他開始從一開始就獲得所有項目),因爲它也是。 –