FTPでデータを公開されているところから、Nodeでデータを読み取る方法についてやっていきます。
FTPとは何か
まずFTPというのはFile Transfer Protocolのことで、ファイルの転送のためのプロトコルです。
しかしいつも目にするのはhttp(Hypertext Transfer Protocol)だと思います。
FTPとhttpを比べるとわかりますが、そもそもプロトコルが違います。
なので、GETリクエストなどではなくて、FTPに合わせたアプローチをする必要があります。
FTPからデータを取得する
データの取得先(NASDAQのティッカーシンボル)
今回はnasdaqから株のティッカーシンボルを手に入れたいと思います。
NASDAQティッカーの取得先は以下です。ftp://ftp.nasdaqtrader.com/symboldirectory/nasdaqlisted.txt
FTPを扱うためのパッケージ
FTPを扱うためのパッケージであるftp
を使っていきます。
ftpのインストールは以下で行います。
npm install ftp
FTPからデータにアクセスする
コードを見た方が理解できると思うので、コードだけ書いておきます。
細かい関数等はこちらのドキュメントでご確認ください。

ftp
An FTP client module for node.js. Latest version: 0.3.10, last published: 8 years ago. Start using ftp in your project by running `npm i ftp`. There are 656 oth...
//requireとインスタンス
var FTPClient = require('ftp');
var c = new FTPClient();
//接続する
//ログインが必要な場合はhost意外にも与えてください
c.on('ready', function() {
c.get('/symboldirectory/nasdaqlisted.txt', function(err, stream) {
var content = '';
stream.on('data', function(chunk) {
content += chunk.toString();
});
stream.on('end', function() {
console.log(content);
c.end();
});
})
});
c.connect({
host: "ftp.nasdaqtrader.com"
});
参考にしたサイト

Fs.readFile on FTP server
I've got some script in Node.js which is working when I run it on my computer but not when I'm on a server. I've got 2 servers: I run the webApplication on the ...
コメント