任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 257

 
Glina:


在某位顾问之后就这样了,我甚至不记得是哪位顾问。


用圣水洒在电脑上。
 
gyfto:

在你的电脑上洒下圣水。

我是认真的,我不是在开玩笑。 我想把猫头鹰放进去。 我现在无法直接思考设置。
 
Glina:

我有两个账户,一个是欧元兑美元1.3469,另一个现在是1.36690。
我不明白你的问题是什么。你是否在同一终端中切换不同的账户?
 
artmedia70:
从你的问题的本质来看,我不明白什么。你是否在同一终端中切换不同的账户?


也有两个终端,但其中一个已经将4位数转换为5位数。
 
gyfto:

mzk_3om6u,DOM结构在IE10中最容易通过VBScript/JScript进行操作,你可以通过WinExec()运行wsf脚本。你正试图转换标签。为了什么?你可以安全地通过InnerText工作,在脚本的最后,你向一个文件做了一条记录,你在索引中收到了该文件。下面是一个例子。


问题不在于保存数据,甚至不在于搜索标签,一切都很平庸和简单,我想在MT4中用西里尔语搜索,但当从互联网上保存一个页面时,任何西里尔语都被转换为另一种编码。
 
mzk_3om6u:

好吧,问题不在于保存数据,甚至不在于搜索标签,一切都很琐碎和简单,我想在MT4中用西里尔语搜索,但当你从互联网上保存一个页面时,任何西里尔语都被转换为另一种编码。


这个周末我将尝试渲染你的网站,看看我能做什么。在那之前不能做,终端很忙。

 
Glina:

也有两个终端,但其中一个已经从4位变成了5位。
对不起,我已经失去了我的感官能力。
 
gyfto:


我将在周末尝试解除你的网站的配对,看看我能做些什么。在那之前是不可能的,航站楼很忙。


没有什么有趣的,只是MT4没有看到特殊字符,如:no, §, ©, ‰, ×
 
mzk_3om6u:

没有什么有趣的,MT4只是没有看到特殊符号,如:№、§、©、‰、×。

我特意只选择了有西里尔字母的单元格--它是这样写的。通过在getElementsByTagName("TD").Item(j)中枚举j来获取其余部分,或者更聪明的是,在Chromium中自己选择要读取的列把它写成csv,别忘了用分隔符连接,然后去做。

专家/文件/trx_rowa.vbs

'On Error Resume Next
Dim IE : Set IE = WSCript.CreateObject("InternetExplorer.Application")' открываем IE
Dim objFSO : Set objFSO = CreateObject("Scripting.FileSystemObject")' получаем доступ к FSO
Dim fTxtName : fTxtName = Left(WSCript.ScriptFullName,len(WSCript.ScriptFullName)-3) & "txt"' чтобы писать в csv-файл, поменять txt на csv
Set TxtFile = objFSO.OpenTextFile(fTxtName, 2, True)'открываем файл для записи
IE.visible = false' браузер в фоновом режиме
IE.navigate "http://www.fxteam.ru/forex/economic-calendar/2013_49.html"' страница с календарём для парсинга
Do While IE.Busy' пока браузер не загрузится
        WSCript.Sleep 500' ждём полсекунды
loop' в цикле
Do While IE.document.getElementsByClassName("tr1 rowa").Item(0).getElementsByTagName("TD").Item(4) is Nothing' пока этот элемент страницы не загрузится
        WSCript.Sleep 500' будем ждать загрузки страницы
loop' в цикле
Set tr1_rowa = IE.document.getElementsByClassName("tr1 rowa")' получаем коллекцию таких DOM-элементов
For i = 0 to tr1_rowa.length - 1' перебираем её
        TxtFile.WriteLine tr1_rowa.Item(i).getElementsByTagName("TD").Item(4).InnerText' записываем текстовое содержимое ячейки в файл
Next
Set tr0_rowa = IE.document.getElementsByClassName("tr0 rowa")' получаем коллекцию таких DOM-элементов
For i = 0 to tr0_rowa.length - 1' перебираем её
        TxtFile.WriteLine tr0_rowa.Item(i).getElementsByTagName("TD").Item(4).InnerText' записываем текстовое содержимое ячейки в файл
Next
Set IE = Nothing' закрываем браузер
TxtFile.Close' закрываем файл
WSCript.Quit()' выключаем скрипт

MQL4

#import "kernel32.dll"
   int WinExec(string lpCmdLine, int uCmdShow);
#import
//в старте (или где надо)
WinExec("cscript experts/files/trx_rowa.vbs", 2);
Sleep(60*1000);
hFile = FileOpen("trx_rowa.txt", FILE_READ|FILE_CSV);
while(!FileIsEnding(hFile)){
  //обычный цикл чтения файла...
}
FileClose(hFile);
 
gyfto:

我特意只选择了有西里尔字母的单元格--它是这样写的。通过在getElementsByTagName("TD").Item(j)中枚举j来获取其余部分,或者更聪明的是,在Chromium中自己选择要读取的列写成csv,别忘了用分隔符连接,然后走。

专家/文件/trx_rowa.vbs

MQL4


我还是不明白该把什么东西放在哪里,而且剧本的写法也不是特别清楚:(

什么是trx_rowa.vbs,它与MT4有什么关系?)