Joh*_*len 1 csv node.js scrape
我正在尝试从Yahoo财务网址获取结果:
http://finance.yahoo.com/d/quotes.csv?s=XOM=sn1yr ,它返回:
"XOM",4:00pm - <b>83.25`</b>`,2.11,13.42
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用Mongoose将这些结果存储在数据库中。我有一些代码可以从现有CSV文件中保存(您可以看到不同但相关的内容):
var writer = new csv.CsvWriter(process.stdout);
reader.setColumnNames(["Symbol","Company","StockExchange"]);
reader.addListener('data', function(data) {
console.log(data);
var stock = new Stock(data).save();
});
Run Code Online (Sandbox Code Playgroud)
我正在尝试做类似的事情:
Scraper是位于https://github.com/mape/node-scraper的模块
scraper('http://search.twitter.com/search?q=javascript', function(err, $) {
if (err) {throw err;}
$('.msg').each(function() {
console.log($(this).text().trim()+'\n');
});
});
Run Code Online (Sandbox Code Playgroud)
但使用Yahoo URL的CSV结果却没有将响应放入单独的CSV文件中,并被告知我需要以某种方式使用stream.write。我是Node的新手,希望能帮助您解决这个问题。在此先感谢您的帮助!
因此,您正尝试从http://finance.yahoo.com/d/quotes.csv?s=XOM=sn1yr获取CSV 并解析数据,以便可以将其存储在数据库中?
我的抓取库node.io可能会提供帮助。
require('node.io').scrape(function() {
this.get('http://finance.yahoo.com/d/quotes.csv?s=XOM=sn1yr', function(err, data) {
var lines = data.split('\n');
for (var line, i = 0, l = lines.length; i < l; i++) {
line = this.parseValues(lines[i]);
console.log(line); //['XOM, '4:00pm - <b>83.25`</b>`', '2.11', '13.42']
//Do something with your data..
}
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3170 次 |
| 最近记录: |