「適時開示情報閲覧サービス」で「株主優待」の検索結果をメールで受け取る方法

  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング

ネットでColdFusionで作れる簡単な案件はないか探していたところ、

以下のような案件がありました。

 

「適時開示情報閲覧サービス」で「株主優待」を検索して確認しているが、毎回その作業が面倒。メール通知してもらうと便利。

 

株はやっていませんが、

株主優待券生活で注目を集める桐谷さんが気になっていたので、

株主優待に興味がありました。

 

こちらの記事を読むと、やってみたくなりました。

株主優待で生き抜くためには…桐谷流「優待の心得」

 

昔、先物取引をやったことがありますが、
お金が儲かるとか損したとか、疲れました。

 

結局負けました。

 

それよりは、ゆるくやったほうがいいというか、
株主優待は、いいかもしれません。

 

ちなみに、

「適時開示情報閲覧サービス 株主優待」

でググってみると、以下の記事がありました。

 

東証:適時開示情報閲覧サービスを利用しよう

 

なるほど、優待の条件を変更する企業が増えているとのこと。

 

だから、

「まめにチェックしたいが、面倒」

ということですね。

システム作成の条件

概略としては、以下のとおりです。

 

  • 一定間隔で検索
  • 検索結果の内容を抽出
  • 該当結果があった場合、指定のアドレスにメール送信

一定間隔で検索

ColdFusionで、一定間隔でプログラムを実行する設定をしていても、
なんらかの原因で、実行されない場合があります。

 

実行されているかどうかの確認のためにも
ログは必要です。

 

ついでに、ログに検索結果をセットし、画面に表示すると
いつの検索結果か、わかりやすいですね。

検索結果の内容を抽出

検索結果の内容は、
見た目では、テーブルのこの位置ということはわかりますが、
どうやって特定のデータを取得するかは難しいと思います。

 

そうなると、ライブラリを使うと便利です。

 

簡単に言うと、
自分で作ったHTML文書は、JavaScriptではjQueryで操作できますが、
サーバ側でjQueryと同じようにできるライブラリです。

 

このライブラリは、jsoupライブラリといいます。

jsoup: Java HTML Parser

 

ColdFusionはJava上で動いているので、
Javaライブラリとの相性は抜群です。

該当結果があった場合、指定のアドレスにメール送信

一定間隔でプログラムを実行しますが、
「適時開示情報閲覧サービス」では
検索は日にち単位となっています。

 

1時間単位でプログラムを実行すると、
その1時間内に該当データがあった場合だけ、
メール送信したいものです。

具体的な設定

検索条件などはinit.xml

検索条件は「株主優待」としていますが、
場合によっては変更したい場合があります。

 

また、メールアドレスやメールサーバの設定も
各自それぞれ設定が必要ですので、
init.xmlに設定することにしました。

 

<init>
    <max_cnt>24</max_cnt>
    <key>株主優待</key>
    <mail_from>from@hoge.com</mail_from>
    <mail_to>to@hoge.com</mail_to>
    <mail_port>587</mail_port>
    <mail_server>smtp.hoge.com</mail_server>
    <mail_username>hoge@hoge.com</mail_username>
    <mail_password>pass</mail_password>
    <mail_useTLS>yes</mail_useTLS>
</init>

※中身は適当です

ログファイル名

ログファイル名は、以下のようにしました。

log_yyyymmddHHmm_x.txt

 

※年月日時分がファイル名になります。
※.txtの前のxは、該当件数です。

 

日時をファイル名にすることによって、
ファイル名順=日時順
となります。

 

ファイル作成日時を使ってもいいですが、
デバッグなどテストするときに、
今回のようなファイル名の方が便利です。

タスクを1時間に設定しても。。。

タスクを1時間に設定しても、
自分のPCで開発している場合は、PCの電源を切る場合もあります。

 

その場合は、当然のことながら、プログラムは動いていません。

 

動いていなければしょうがないですが、
動きだしたら、前回のログを元に、
その時間から現在までの時間を対象にした検索結果を
抽出する必要があります。

 

ログファイルが日時となっているので、実現可能です。

ログ用の画面

ほとんどの場合は、タスクを設定すると、常に設定したとおりに動きます。

 

開発中のトラブルかなにかで、タスクが動いていない場合があったとしても、
ログ用の画面を見ることによって、動作の確認ができます。

 

また、ログに検索結果の内容をセットすることによって、
いつ該当データがあったかを、画面上で確認することができます。

 

画面も自動的に更新するようにしました。

kabu
※データは適当です。

苦労したこと

適時開示情報閲覧サービス」で、

表示されたブラウザでマウスの右クリックをしても、

なにも表示されません。

 

ソースの確認が簡単にはできない状態です。

 

ファイルを保存して、ソースを確認。

 

検索してみるが、うまくいかない。

 

よく調べると、隠しパラメータが。。。

うまく検索できれば、あとはデータ解析するだけですね。

無料レポートとソース

このページの内容をまとめた無料レポートを作成しました。

そして、ソースをまとめました。

 

「うたらぼプライム」に参加するとダウンロードできます。
ぜひ、ソースを確認していただいて、役立ててください。

  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング
最近の投稿
カテゴリー
タグ
アーカイブ
プロフィール