*

【EA開発講座】第31回 チャート上にWEBサイトの情報を載せる その2

公開日: : EA開発講座 , ,

今回は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に公開されるので、問い合わせ等はメールでお願いします。

関連記事

【EA開発講座】第25回:iCustomでインジケータをEA化する

インジケータとiCustom 今回はインジケーターのシグナルを使って、EAを作ります。 iCust

記事を読む

【EA開発講座】第2回:EAの新規作成

新規作成 メタエディタから「New」(新規作成)をクリックしてください。 するとこれから何を作るの

記事を読む

【EA開発講座】第22回:チャート上にデータを表示させる

MT4のチャート上にデータを表示させる Comment()という関数を使うとビジュアルモードのバック

記事を読む

【EA開発講座】第19回:繰り返し処理とfor文

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

記事を読む

【EA開発講座】第1回:EA開発環境の前準備 ~エディタソフトの確認~

メタエディタの準備 EAを開発するにはMT4に付属しているメタエディタというソフトを使います。 M

記事を読む

 

  • (↑広告です。このサイトの管理者の運営ではありません)



  • 横瀬兼元(ペンネーム)です。

    ご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    偽者(オリジナルある模倣者)がいるらしいのでご注意ください。
【MT4EA】半年で5万回以上トレードしても右肩上がりにできる証明(EA配布)

(ただし、スプレッドが狭ければ...) EURUSD

no image
(MT4EA)MACDと特殊ベッティング【EA検証班求ム】 

. . 超シンプルなMACDのEAです

MT4の1分足テストで起こる致命的な現象

1分足っていうのは他の時間枠といろいろ違う点があります。 まず、本題か

no image
【EA検証班募集】コツコツドカンとドローダウン(MT4) ~原理は単純を、構造は複雑を、人は最も人らしく~

EURGBP 2018.11.1~2019.4.30 D1 Sp

MT5のテスターではスプレッドは変更できないという事実

を知らない人が多くて、「このバックテストのスプレッドはいくつですか」と

→もっと見る

PAGE TOP ↑