Как получить часть веб-страницы на MQL4?

Я новичок в программировании. Мне нужно запрограммировать код, который будет ПОЛУЧАТЬ веб-страницу на языке MQL4. Я скопировал/вставил код WebRequest():

res = WebRequest( "GET",
                  Inv_url,
                  cookie,
                  NULL,
                  timeout,
                  post,
                  0,
                  result,
                  headers
                  );

который может скачать всю страницу.

Однако я хотел бы получить только одну таблицу на странице, например, когда я создаю новый запрос в Excel.

Excel:введите здесь описание изображения

Спасибо за помощь.


person vonTOGR    schedule 20.10.2016    source источник
comment
Zdravim do Brna :o) -- jak moc vazny to je projekt?   -  person user3666197    schedule 20.10.2016


Ответы (1)


Ну, честно говоря, нетипичная задача для MQL4

MQL4 начал свою жизнь как язык для сверхбыстрой/близкой к реальному времени платформы выполнения кода (также известной как [ MetaTrader Terminal 4 ] ).

При этом язык может обрабатывать очень умное и быстрое смещение регистров, чтобы не терять время внутри обработки потока данных, запускаемой рыночным событием, частота которой составляет множество событий за одну миллисекунду, да, много за одну миллисекунду (иногда в прайм-тайм их может быть несколько сотен).

Принимая во внимание это, становится естественным, что буквально отсутствует прямая поддержка языка/синтаксиса для какой-либо общей композиции разметки-языка-оболочки-{http|script} и/или взаимодействия с ней.

В течение первого десятилетия своего жизненного цикла изначально солидный MQL4 язык (а не последние год или два (все еще много ползучих) Новый- MQL4.56789 производная попытка переместить и применить MQL4-домен к MQL5-домену, но это, конечно, другая тема), не поддерживала никаких взаимодействий «за пределами MT4-box» . Просто ничего, чтобы избежать каких-либо помех от внешних неосновных, потенциально блокирующих процессов, которые могут дестабилизировать жесткий цикл выполнения платформы в реальном времени.


Это не значит, что сегодня нельзя расширить MQL4 для работы с этим

В качестве быстрого прокси-решения можно забыть о MQL4-синтаксисе (функции и др.) и начать думать о выполнении MQL4-части как обычно и расширить процессы [MetaTrader Terminal 4], чтобы иметь возможность взаимодействовать с внешними (распределенными) хосты, где (в качестве простейшего примера прототипирования) процесс python может выполнять работу, которая в противном случае была бы сложной для MQL4.

Это именно тот подход, при котором никто не рискует MQL4 проблемами с разбором композиции-оболочки-{http|script}-языка-разметки, чтобы найти любой необходимый элемент(ы).

Это основывается на сильных сторонах python в выполнении этой самой части и оставляет только организацию взаимного сотрудничества такого рабочего процесса с распределенными процессами.


Как интегрировать рабочие процессы с распределенными процессами?

После многих сотен человеко-лет экспериментов и поддержки кодовой базы мой выбор №1 — [ZeroMQ] или [nanomsg].

Если вы не хотите вкладывать свою «кровь, слезы и пот» в эти или другие интеллектуальные распределенные архитектуры сигнализации/коммуникации, вы можете использовать их в качестве В крайнем случае следует перейти к MQL4 WebRequest() даже для интеграции с облегченным веб-сервером на основе Python, чтобы завершить намеченный поток обработки и доставить желаемые результаты на сторону MQL4.

person user3666197    schedule 20.10.2016