Author Topic: Вместо строки из файле пишет всякую ересь  (Read 4340 times)

0 Members and 1 Guest are viewing this topic.

LA7

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Наваял простенький лайкер вконтакте. Берет построчно адреса профилей и тулит их в адресную строку браузера. Потом переход, ждем пока загрузится страница, тыкнуть в авку, лайкнуть ее и переход на новый профиль.

 Так вот, вместо адреса профиля скрипт в адресную строку  может начать писать какой-то набор цифр (на картинке). Лечится перезагрузкой, но это не вариант, ага. Как заставить его нормально работать?


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Написать нормальный скрипт.
Или показать скрипт и написать в каких режимах он выполняется.


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Простой вариант
Code: (clickermann) [Select]
EXECUTE(TFREAD("Links.txt", 1)) // читаем первую строку из файла Links.txt и запускаем ссылку в браузере по умолчанию
WAIT(5)

//  делаем что нужно

KEYDOWN (#CTRL) // закрываем вкладку
WAITMS (50)
KEYPRESS(#W)
KEYUP (#CTRL)

TFDELETE("Links.txt", 1) // удаляем строку из файла
WAITMS (500)
IF(TFCOUNT("Links.txt") = 0) // если все строки в файле кончились
   HALT // стоп
END_IF
« Last Edit: November 04, 2016, 10:58:52 AM by Oraven »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
как я забыл этот вариант с экстросенсорикой...

Андрей, человек жалуется на работу своего кода, пусть его и покажет.

После удаления строки нужна пауза. Иначе наступит момент занятости системы и файл не успеет весь пересохраниться. Тут и поймаем часть строки вместо целой. Точнее часть байтов.


Золотой

  • Оплот сообщества
  • ****
  • Posts: 312
    • View Profile

диагноз ясен. аглицкий текст копируется и вставляется при русской раскладке. Лечить это перезагрузкой всё равно что бить комаров сковородой.
Тот кто имеет право заставлять никогда и никого не спрашивает, как это делать!  :P

LA7

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Прошу прощения, код скрипта

Code: [Select]
#name "VK_Liker"


LCLICK(825,46)  // 16777215
WAIT(1)

DEFINE($A)

$A = TFRead("alltoworkVK.txt", 1)

TFDELETE("alltoworkVK.txt", 1)

keystring($A)

KEYPRESS(#ENTER)
WAIT(5)

LCLICK(475,220)  // 5406902
WAIT(10)

GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "unlike.bmp", -1, 100 )
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF

WAIT(2)

GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "robo.bmp", -1, 100)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF


WAIT(5)

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Ну вот так тогда
Code: (clickermann) [Select]
#name "VK_Liker"

LCLICK(825,46)  // 16777215
WAIT(1)

EXECUTE(TFREAD("alltoworkVK.txt", 1))
WAIT(5)

LCLICK(475,220)  // 5406902
WAIT(10)

GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "unlike.bmp", -1, 100 )
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF

WAIT(2)

GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "robo.bmp", -1, 100)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF

WAIT(5)

TFDELETE("alltoworkVK.txt", 1) // удаляем строку из файла
WAITMS (100)
IF(TFCOUNT("alltoworkVK.txt") = 0) // если все строки в файле кончились
   HALT // стоп
END_IF

LA7

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
А с моим кодом где ошибка?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
А с моим кодом где ошибка?

Функция KEYSTRING зависима от раскладки, но даже если выбрать раскладку En в браузере и кликере то все равно она не сможет написать двоеточие так как для этого нужно зажимать Shift.


Золотой

  • Оплот сообщества
  • ****
  • Posts: 312
    • View Profile
А с моим кодом где ошибка?
Ошибка не с кодом, а с тем что вы сразу начали врать, что он может иногда работать. Ну и что это враньё вам дало?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
А может и работало иногда. Сейчас же, как всегда вовремя, выяснится, что была включена привязка, а там кейстринг ведет себя по другому.

Или часть ссылок была попроще, без http... ведь это лишнее на самом деле. Браузеры сами всегда подставляют.
« Last Edit: November 04, 2016, 07:41:46 PM by Vint »


LA7

  • Зашел в гости
  • *
  • Posts: 4
    • View Profile
Скрипт работает только с экраном, без привязки к окну с браузером опера.

Демонстрация работы на видео по ссылке:

https://youtu.be/3yCj0gAYEsk

Oraven, спасибо за помощь

Золотой, я жду извинений.
« Last Edit: November 05, 2016, 08:07:35 AM by LA7 »

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Простой вариант
Code: (clickermann) [Select]
EXECUTE(TFREAD("Links.txt", 1)) // читаем первую строку из файла Links.txt и запускаем ссылку в браузере по умолчанию

Интересная подстановка, то есть при выполнении EXECUTE(https://ya.ru/) запустится сайт?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
EXECUTE выполняет ту же функцию что и "Выполнить" в меню пуск.

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Я понимаю, но мне ни разу не приходило на ум открывать сайты через Win-R, поэтому не знаю и спрашиваю, реально ли это.