*

【MT4MT5】チャート上にWEBサイトの情報を載せる その2

公開日: : FX自動売買開発 , ,

今回はWEBサイトから取得したデータのスクレイピングです。
スクレイピングとは、すごい長い文字列から欲しい文字列だけを抽出することです。

基本的にWEBサイトは、

の構成になっています。

まず第一段階として、ヘッダの情報はいらないので削除します。

StringFindで<bodyまでの文字数をカウントし、最初からそのカウントまでの文字を””に変換します。

<body>としてタグを閉じてしまうと、<body class=””…となっているWEBサイトの場合に対応できないので、<bodyで検索をかけます。

(<スペースbody となっていないことを祈るばかりです。)

これでHTMLのbodyだけを抽出できました。

あとはこれの繰り返しです。

多くのサイトはテンプレートを使っているかワードプレスのようなCMSなので、同じような構成です。

テンプレートを使っていない場合でも、基本となる”暗黙の了解”のようなものがWEBの世界にはあるので、

メインとなる箱はたいてい
<div class=”main”>とか<div id=”wrapper”>とか<div class=”container”>
とかだったりします。

ある程度欲しい情報のまとまりが取れてきたら、今度はHTMLタグを外します。

また、日本語のサイトを表示させようとすると文字化けすることがありますが、
これはもう仕方ないです。

“自サーバーで文字コードを変換する”とかしかありません。

基本的にMQLは文字化けに滅茶苦茶弱いので、というか文字化けに対応させようとする気がメタクオーツ社にあまりないので、

MQL内で文字コードの変換はできないものと思っておいてください。
(今後のアップデートで改良される可能性はわずかながらにあるかもしれません。)

また、WebRequestはティック更新ごとに行うと十中八九Dos攻撃とみなされ、WEBサーバーがアクセスを一定時間拒否します。

1分に一回くらいのアクセスにしておきましょう。

(逆に言えば、EAでDos攻撃ができるわけです。)

Message

メールアドレスが公開されることはありません。

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

PHP(サーバー)側からEAに情報を送る

以前の投稿で、EA側からサーバーにアクセスする方法について扱ったのですが、 ”逆にサーバー側か

記事を読む

第19回:for文で回す

MQLのfor文 プログラミングでは同じような処理を何回もしなければならないことがあります。

記事を読む

MT4でマルチタスク処理

MT4/MT5は基本的にC言語ベースなのでマルチスレッドはできません。 しかし、複数のチャート

記事を読む

MQLxPHP サーバを経由するコピートレードツールを作る4

今回はサーバー側のコーディングを行います。 まずは、トレードを送信する親側の処理を行うPHPファイ

記事を読む

第8回:決済の記述 OrderClose

ここではポジションを決済するための記述を行います。 OrderClose OrderSen

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    各トピックに対するコメントは各記事のコメント欄にお願いします。それ以外のご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    私の偽物がいるらしいので偽物にご注意ください。
no image
ストップレベル=0はストップレベルがないことではない

MT4/MT5では予約注文を行う際にストップレベルというものがあります

no image
私の偽者、偽ブログにご注意ください

読者の方からご連絡いただいたのですが、私のブログの内容をそのままコピー

no image
サービス展開向けの仮想通貨自動売買システムを作るには

前置き ビットコイン、仮想通貨の自動売買を作る目的として、通常は個人

一回の演算で複数のリクエストを送る 仮想通貨の自動売買⑪

公開:2017/9/4 基本的にjson形式でAPIをたたく場合

コインチェックAPIで信用取引 仮想通貨の自動売買⑩

公開:2017/9/4 これまではAPIで現物取引を扱ってきまし

→もっと見る

PAGE TOP ↑