Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: FJ on November 25, 2015, 05:40:08 AM
-
Доброго дня!
Подскажите пожалуйста, как мне осуществить такую штуку. На сайте выводится текст и периодически меняется. допустим может поменяться 3-7 раз за день.
Мне нужно чтобы кликер мне показал:
"дата появления(когда был первый раз замечен)" , "ТАВ" , "дата замены(когда последний раз был замечен)" , "ТАВ" , "сам текст(может быть несколько слов, и так же содержать ТАВуляцию)"
Если текст не находит, создает новую строчку с датой появления и замены, и обновляет ее.
Хотя бы натолкните на мысль, как мне это можно сделать, ну или пример, было бы шикарно! :)
Спасибо заранее! :)
-
А не проще такие задачи поручить php/pyhton скриптам которые имеют безграничные возможности по парсингу данных и запускать его по cron-у?
Покажи адрес сайта, хотя бы в лс, чтобы я примерно знал какие данные и как меняются, может быть и скриптом кликера помогу, и php
-
Адресс сайта - это онлайн игра. timezero.ru, там аукцион.
Я в данный момент все делаю, выдергиваю текст и дату ставлю, но лог получается слишком большим, представьте, на протяжении 2 дней каждые 5 минут пишет в файл одно и то же :)
В итоге хочется узнать наиболее точное время, когда меняется значение. например(во вложенном файле)
Может быть другой способ для этого придумать...
PS: еще я не правильно сказал, цена меняется 1 раз в сутки в одно и то же время.
Но для разного товара цена меняется в разное время
-
Я сколько не пытался найти, так и не нашел именно саму эту страницу с аукционом, только описание его. Мне бы найти именно страничку как во вложении, я бы тогда сделал парсер для тебя простой без привлечения кликера, так как у меня нету особых идей как его тут можно применить. или свяжись в лс, скажи джаббер, скайп или icq для связи, чтобы непосредственно обговорить - уверен там 5 минут работы
-
Зарегистрировался, игра во флеше, я так понял аукцион этот тоже скорее всего внутри игры и рендерит эти таблицы, так что к сожалению я ничем тут не смогу помочь, прошу прощения
-
Вот для наглядности пример в экселе закинул, что должно получиться (изначально кликер мне должен закинуть это все с ТХТ файл)
Если кликер не находит в файле наименование и характеристику, то создает новую строчку и добавляет туда Начало конец Наименование Характеристика.
А если наименование и характеристика находятся, то просто обновлялась дата во 2 колонке(конец)
Вот такая задумка.
Дальше планирую все это в экселе автоматизировать
-
Вот что получилось... Должен искать в файле текст из INPUTBOX, и если находит, обновлять 2ю дату, если не находит - то дописывать с низу.
С низу дописывает, а вот с обновлением времени... Помогите пожалуйста, что я неправильно делаю? Может сменить подход?
SUB(LOG) // текущая дата и время
$th = $_time_h
$tm = $_time_m
$ts = $_time_s
$dd = $_date_d
$dm = $_date_m
$dy = $_date_y
IF(STRLEN($th)<2)
$th = STRCONCAT ("0", $th)
END_IF
IF(STRLEN($tm)<2)
$tm = STRCONCAT ("0", $tm)
END_IF
IF(STRLEN($ts)<2)
$ts = STRCONCAT ("0", $ts)
END_IF
IF(STRLEN($dd)<2)
$dd = STRCONCAT ("0", $dd)
END_IF
IF(STRLEN($dm)<2)
$dm = STRCONCAT ("0", $dm)
END_IF
IF(STRLEN($dy)<2)
$dy = STRCONCAT ("0", $dy)
END_IF
$date = STRCONCAT ($dd,".",$dm,".",$dy," ",$th,":",$tm,":",$ts)
END_SUB
LOG ()
$text = INPUTBOX("message", "asd1", 10)
$str_num_max = TFCOUNT ( "group_base.txt" ) //находим сколько строк в файле
$str_num_max = $str_num_max +1
print ($str_num_max)
FOR ( $str_num = 1 , $str_num < $str_num_max ) // перебираем все строки в файле
$text_file = TFREAD ( "group_base.txt" , $str_num ) // записываем строку в переменную
IF ( $text = STRFILTER ( $text_file , $text , 1 ) ) //сверяем строки
//если нашли, то нужно заменить дату!
print ("$text_file 1",$text_file)
$text_file = STRFILTER ( $text_file , " \/ " , 0 ) // оставляем $t 1 встречи
print ("$text_file 2",$text_file)
$text_file = STRCONCAT ( $text_file , " \/ " , $date , " /\ " , $text ) // дописываем остальное к 1 дате
print ("$text_file 3",$text_file)
//заменяем текст в файле
TFDELETE ("group_base.txt" , $str_num) // удаляем старую инфу
TFWRITE ( "group_base.txt" , $text_file , $str_num ) / записываем новую инфу
$str_num = $str_num_max //выходим из цикла
halt
END_IF
END_CYC
//Записываем в конец файла новую инфу(если запись не найдена):
TFWRITE ( "group_base.txt" , STRCONCAT ( $date , " \/ " , $date , " /\ " , $text ))
halt
-
Может так?
SUB(LOG) // текущая дата и время
$th = $_time_h
$tm = $_time_m
$ts = $_time_s
$dd = $_date_d
$dm = $_date_m
$dy = $_date_y
IF(STRLEN($th)<2)
$th = STRCONCAT ("0", $th)
END_IF
IF(STRLEN($tm)<2)
$tm = STRCONCAT ("0", $tm)
END_IF
IF(STRLEN($ts)<2)
$ts = STRCONCAT ("0", $ts)
END_IF
IF(STRLEN($dd)<2)
$dd = STRCONCAT ("0", $dd)
END_IF
IF(STRLEN($dm)<2)
$dm = STRCONCAT ("0", $dm)
END_IF
IF(STRLEN($dy)<2)
$dy = STRCONCAT ("0", $dy)
END_IF
$date = STRCONCAT ($dd,".",$dm,".",$dy," ",$th,":",$tm,":",$ts)
END_SUB
LOG ()
$text = INPUTBOX("message", "asd1", 10)
$str_num_max = TFCOUNT ( "group_base.txt" ) //находим сколько строк в файле
print ($str_num_max)
FOR ( $str_num = 1, $str_num < $str_num_max+1) // перебираем все строки в файле
$text_file = TFREAD ( "group_base.txt" , $str_num ) // записываем строку в переменную
IF ( STRPOS($text_file, $text) > 0 ) //сверяем строки
//если нашли, то нужно заменить дату!
$text_file = STRCONCAT ( $date , " \/ " , $date , " /\ " , $text ) // дописываем остальное к 1 дате
//заменяем текст в файле
TFDELETE ("group_base.txt" , $str_num) // удаляем старую инфу
TFWRITE ( "group_base.txt" , $text_file , $str_num ) // записываем новую инфу
$str_num = $str_num_max+1 //выходим из цикла
halt
END_IF
END_CYC
//Записываем в конец файла новую инфу(если запись не найдена):
TFWRITE ( "group_base.txt" , STRCONCAT ( $date , " \/ " , $date , " /\ " , $text ))
halt
-
Нет, время же старое не остается. а мне именно это и нужно!
Допустим, после 1 раза, сторочка выглядит так
27.11.2015 19:05:35 \/ 27.11.2015 19:05:35 /\ asd1
А после 2 раза будет выглядеть так.
27.11.2015 19:05:35 \/ 27.11.2015 19:06:11 /\ asd1
Как видно, старое время осталось, а новое добавилось.
-
Вот теперь работает так как ты хочешь, берется вторая отметка времени и вставляется за место первой а вторая обновляется.
SUB(LOG) // текущая дата и время
$th = $_time_h
$tm = $_time_m
$ts = $_time_s
$dd = $_date_d
$dm = $_date_m
$dy = $_date_y
IF(STRLEN($th)<2)
$th = STRCONCAT ("0", $th)
END_IF
IF(STRLEN($tm)<2)
$tm = STRCONCAT ("0", $tm)
END_IF
IF(STRLEN($ts)<2)
$ts = STRCONCAT ("0", $ts)
END_IF
IF(STRLEN($dd)<2)
$dd = STRCONCAT ("0", $dd)
END_IF
IF(STRLEN($dm)<2)
$dm = STRCONCAT ("0", $dm)
END_IF
IF(STRLEN($dy)<2)
$dy = STRCONCAT ("0", $dy)
END_IF
$date = STRCONCAT ($dd,".",$dm,".",$dy," ",$th,":",$tm,":",$ts)
END_SUB
LOG ()
$text = INPUTBOX("message", "asd1", 10)
$str_num_max = TFCOUNT ( "group_base.txt" ) //находим сколько строк в файле
print ($str_num_max)
FOR ( $str_num = 1, $str_num < $str_num_max+1) // перебираем все строки в файле
$text_file = TFREAD ( "group_base.txt" , $str_num ) // записываем строку в переменную
IF ( STRPOS($text_file, $text) > 0 ) //сверяем строки
//если нашли, то нужно заменить дату!
$dats = STRCUT2 ($text_file, STRPOS ($text_file, " \/ ")+4, STRPOS($text_file, " /\ ")-1)
$text_file = STRCONCAT( $dats, " \/ ", $date, " /\ ", $text) // дописываем остальное к 1 дате
//заменяем текст в файле
TFDELETE ("group_base.txt" , $str_num) // удаляем старую инфу
TFWRITE ( "group_base.txt" , $text_file , $str_num ) // записываем новую инфу
$str_num = $str_num_max+1 //выходим из цикла
halt
END_IF
END_CYC
//Записываем в конец файла новую инфу(если запись не найдена):
TFWRITE ( "group_base.txt" , STRCONCAT ( $date , " \/ " , $date , " /\ " , $text ))
halt
-
Чет пока не понял, как работает, разбираюсь.
Нужно чтобы 1 дата навсегда оставалась, а 2я менялась только. Можете поменять? а так да.. супер! То, что нужно! :)
Спасибо! :)
-
SUB(LOG) // текущая дата и время
$th = $_time_h
$tm = $_time_m
$ts = $_time_s
$dd = $_date_d
$dm = $_date_m
$dy = $_date_y
IF(STRLEN($th)<2)
$th = STRCONCAT ("0", $th)
END_IF
IF(STRLEN($tm)<2)
$tm = STRCONCAT ("0", $tm)
END_IF
IF(STRLEN($ts)<2)
$ts = STRCONCAT ("0", $ts)
END_IF
IF(STRLEN($dd)<2)
$dd = STRCONCAT ("0", $dd)
END_IF
IF(STRLEN($dm)<2)
$dm = STRCONCAT ("0", $dm)
END_IF
IF(STRLEN($dy)<2)
$dy = STRCONCAT ("0", $dy)
END_IF
$date = STRCONCAT ($dd,".",$dm,".",$dy," ",$th,":",$tm,":",$ts)
END_SUB
LOG ()
$text = INPUTBOX("message", "asd1", 10)
$str_num_max = TFCOUNT ( "group_base.txt" ) //находим сколько строк в файле
print ($str_num_max)
FOR ( $str_num = 1, $str_num < $str_num_max+1) // перебираем все строки в файле
$text_file = TFREAD ( "group_base.txt" , $str_num ) // записываем строку в переменную
IF ( STRPOS($text_file, $text) > 0 ) //сверяем строки
//если нашли, то нужно заменить дату!
$dats = STRCUT2 ($text_file, 1, STRPOS($text_file, " \/ ")-1)
$text_file = STRCONCAT( $dats, " \/ ", $date, " /\ ", $text) // дописываем остальное к 1 дате
//заменяем текст в файле
TFDELETE ("group_base.txt" , $str_num) // удаляем старую инфу
TFWRITE ( "group_base.txt" , $text_file , $str_num ) // записываем новую инфу
$str_num = $str_num_max+1 //выходим из цикла
halt
END_IF
END_CYC
//Записываем в конец файла новую инфу(если запись не найдена):
TFWRITE ( "group_base.txt" , STRCONCAT ( $date , " \/ " , $date , " /\ " , $text ))
halt
-
Спасибо!
То что нужно! :)