Что нового

[Данные, строки] Создание цикла

Kasol

Новичок
Сообщения
27
Репутация
0
Код:
While 1
   Cycle1()
   Cycle2()  
 
   Sleep(250)
WEnd
Func _Exit()
    Exit
EndFunc



Func Cycle1()
;Проверяем наличие товара
#include <Array.au3>

$oIE = _IECreate('http://www.test.ru/statlist.php?r=iron')
$oTableAll = _IETableGetCollection($oIE)
$iNumTables = @extended
    $oTable = _IETableGetCollection($oIE, 8)
    $aTableData = _IETableWriteToArray($oTable, 8)
;~     ;_ArrayDisplay($aTableData, $i)
;~  _ArrayDisplay($aTableData)

For $i = 0 To UBound($aTableData) -1
   If $aTableData[$i][1] >= 60  And $aTableData[$i][2] <= 215 Then _
ConsoleWrite(StringFormat('Объект: %s Может продать: %s Цена: %s\r\n', $aTableData[$i][0], $aTableData[$i][1], $aTableData[$i][2]))

 Next

;Вот тут должны следовать следующие пункты.Если товар найден,то переходим по ссылке.если нет,обновляем страницу.

EndFunc

Дальше выводит нужную информацию..Вот только не понимаю одного..Я поставил количество не меньше 60.А цену не больше 215.
Но выдаёт полный список всего товара. Но с количеством не меньше 60. Что не могу сказать про цену..выдаёт допустим железо с количеством 65 по цене 300...Вот не понимаю,как сделать так.Что-бы товар показывало с ценой не больше 215.. Что делаю не правильно? Так-же пытался прикрутить
Код:
MsgBox
если найден товар по нужным параметрам.То выдаёт табличку что товар найден.. Тогда следует следующий цикл. Но Если товар по заданным параметрам не найден. продолжается обновление страницы,пока не будет найден товар..Тоже без успешно..Прошу вашей помощи,с решением
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Код:
Local $aTableData[6][3] = [['A', 11, 215], _
						   ['B', 82, 23], _
						   ['C', 1, 345], _
						   ['D', 60, 215], _
						   ['E', 78, 45], _
						   ['F', 2, 55]]

For $i = 0 To UBound($aTableData) -1
   If $aTableData[$i][1] >= 60 And $aTableData[$i][2] <= 215 Then
	  ConsoleWrite(StringFormat('Объект: %s Может продать: %s Цена: %s\r\n', $aTableData[$i][0], $aTableData[$i][1], $aTableData[$i][2]))
   EndIf
Next
 
Автор
K

Kasol

Новичок
Сообщения
27
Репутация
0
Garrett сказал(а):
Код:
Local $aTableData[6][3] = [['A', 11, 215], _
						   ['B', 82, 23], _
						   ['C', 1, 345], _
						   ['D', 60, 215], _
						   ['E', 78, 45], _
						   ['F', 2, 55]]

For $i = 0 To UBound($aTableData) -1
   If $aTableData[$i][1] >= 60 And $aTableData[$i][2] <= 215 Then
	  ConsoleWrite(StringFormat('Объект: %s Может продать: %s Цена: %s\r\n', $aTableData[$i][0], $aTableData[$i][1], $aTableData[$i][2]))
   EndIf
Next
Спасибо за ответ! Но я что-то не до конца понимаю всю суть данной подсказки..Можно как-то по подробней разжевать? :whistle:


Добавлено:
Сообщение автоматически объединено:

А всё,разорался.Просто немного запутался) Большое спасибо.А вот как правильно прикрутить
Код:
MsgBox
,что-бы когда находил строку по заданным критериям.Выдавало сообщение! Если-же нет нужных строк.Обновляем страницу,продолжаем поиск..
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Код:
#include<IE.au3>

$iEmpty = 0

$oIE = _IECreate('ya.ru')

Local $aTableData[6][3] = [['A', 11, 215], _
						   ['B', 82, 23], _
						   ['C', 1, 345], _
						   ['D', 60, 215], _
						   ['E', 78, 45], _
						   ['F', 2, 55]]

For $i = 0 To UBound($aTableData) -1
   If $aTableData[$i][1] >= 60 And $aTableData[$i][2] <= 215 Then
	  MsgBox(262208, '', StringFormat('Объект: %s\r\nМожет продать: %s\r\nЦена: %s', $aTableData[$i][0], $aTableData[$i][1], $aTableData[$i][2]), 1)
	  ;ConsoleWrite(StringFormat('Объект: %s Может продать: %s Цена: %s\r\n', $aTableData[$i][0], $aTableData[$i][1], $aTableData[$i][2]))
	  $iEmpty +=1
   EndIf
Next

If Not $iEmpty Then
   ; Если ничего не найдено, обновляем страницу.
   $oIE.document.parentwindow.location.reload()
EndIf
 
Автор
K

Kasol

Новичок
Сообщения
27
Репутация
0
Garrett​
Большое спасибо за помощь! :beer:
Решено
 
Верх