我正在使用 MQL4 开发一个程序,该程序需要从特定网页中提取的一些数据片段。
如何.csv
每 5 分钟将其转储到文件中?
我被困在我将如何去做这件事上。
结构
.html
从页面转储的一些数据- 插入
.csv
文件 - 由 MQL4 读取
我正在使用 MQL4 开发一个程序,该程序需要从特定网页中提取的一些数据片段。
如何.csv
每 5 分钟将其转储到文件中?
我被困在我将如何去做这件事上。
.html
从页面转储的一些数据.csv
文件由于您的问题是如此笼统(不是特定的编码问题),而且范围太广。我将提供一个概括性的答案,为您指明正确的方向。你需要自己做研究。
第 1 部分 - 安排活动
EventSetTimer(5*60)
。OnTimer()
下,调用您的下载程序(参见第 2 部分)第 2 部分 - 下载 HTML
您可以在不使用第 3 方 DLL 的情况下实现此目的。内置的 WindowsWininet.DLL
具有正确的 API:
import "wininet.dll" //Put a # in-front of import
int InternetAttemptConnect (int x);
int InternetOpenW(string sAgent, int lAccessType,
string sProxyName = "", string sProxyBypass = "",
int lFlags = 0);
int InternetOpenUrlW(int hInternetSession, string sUrl,
string sHeaders = "", int lHeadersLength = 0,
int lFlags = 0, int lContext = 0);
int InternetReadFile(int hFile, int& sBuffer[], int lNumBytesToRead,
int& lNumberOfBytesRead[]);
int InternetCloseHandle(int hInet);
import //Put a # in-front of import
这应该让您开始下载部分(自己做一些研究)。
OpenW
,然后使用 来打开 URL OpenURLW
,然后使用 ReadFile API 读取页面内容;最后,使用 关闭会话CloseHandle
。第 3 部分 - 写入 .CSV
要执行文件写入操作,您正在查看FileOpen()
和MQL4 函数。FileWriteString()
FileClose()
第 4 部分 - 读取 .CSV
FileReadString()
.StringSplit()
您可以使用该函数将字符串拆分为 CSV 。.ex4
由于控制和同步需求(ZMQ 具有适用于许多生产级环境的端口/包装器,因此准备好将 MQL4 与任何需要的集成