実際そういったwebサービスが有るような気がしましたが、よくわからなかったので自分でサーバを建ててそこから自動的にメールが送られるようにするシステムを構築しています。
まぁ、システムと言ってもそんなに大層なものでもありませんが一部に需要があるかもしれませんので備忘録を兼ねて書いていきたいと思います。
ちなみに私は以下のような構成で構築していますが多分Windowsだけでもできると思いますので気が向いたらそちらの方も書いていきたいと思います。
構成
使わなくなった古いノートPC(我が家では10年前のFMVで動いています)
OS:CentOS release 5.9 (Final)
必要なソフト
Casperjs
Phantomjs
Casperjsのインストール
git clone git://github.com/n1k0/casperjs.git cd casperjs git checkout tags/1.0.2 ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
Phantomjsのインストール(32bit版)
mkdir ~/tmp
cd tmp
wget https://phantomjs.googlecode.com/files/phantomjs-1.9.2-linux-i686.tar.bz2
tar jxvf phantomjs-1.9.2-linux-i686.tar.bz2
sudo cp phantomjs-1.9.2-linux-i686.tar.bz2/bin/phantomjs /usr/bin
以下のコマンドでそれぞれバージョンが表示されればOK[kaz@hoge ~]$ phantomjs -v 1.9.2 [kaz@hoge ~]$ casperjs --version 1.0.2
問題なくインストールできているようなら「sample.js」を試してみます。
var casper = require('casper').create(); casper.start('http://casperjs.org/', function() { this.echo(this.getTitle()); }); casper.thenOpen('http://phantomjs.org', function() { this.echo(this.getTitle()); }); casper.run();
ここまでできればあとは目的のページからレートを取得するだけです。
取得は自分の好きなサイトから取得すれば良いのですが
今回は「http://nikkei225jp.com/fx/」を利用して取得するscriptを掲載します。
var casper = require('casper').create();
casper.start("http://nikkei225jp.com/fx/",function(){
var date = this.evaluate(function() {
return __utils__.getElementByXPath('//*[@id="wtime"]/div[1]').innerHTML;
//nikkei225jp.com上の日付を取得します
});
var usdjpy = date;
usdjpy += ",";
usdjpy += "USDJPY";
usdjpy += ",";
usdjpy += this.evaluate(function() {
return __utils__.getElementByXPath('//*[@id="tbl1fx"]/tbody/tr[4]/td[2]/a/div[1]/font/span[3]/b').innerHTML;
});
this.echo(usdjpy);
});
casper.run();
以上がサンプルになります。
getElementByXPathの括弧内にXPathで取得したい場所を指定します。
ちなみに上記を実行すると以下のようになります。
[kaz@hoge ~]$ casperjs ex.js 2013/10/06,USDJPY,97.46
ここまでくればあと少しです、あとは自分にメール
が届くようにするだけです。
それでは、続きは次回に。
つづき↓
Casperjsを使用し為替レートを自動取得2/2
FX初心者でも出来る!1日5分簡単副業 WCtake FXメルマガ通信
0 件のコメント:
コメントを投稿