Автоматом проверяем готовность раздач на IndieGala

Justman

Даэдрот такой
Дней с нами
3.485
Розыгрыши
0
Сообщения
1.851
Репутация
214
Реакции
2.439
Учусь кодить на JS хех

Недавно видел в теме с раздачами, что каждую раздачу надо проверять вручную в своём профиле, поэтому решил написать скрипт на JavaScript.

Внимание! Возможны неполадки скрипта, т.к. я чайник, не стесняйтесь отписываться в этой теме, буду править

UPD
Проверял на своём акке, у меня не было выигрышей, и поэтому я не знаю, что будет, если ты выиграл
При выигрыше появляется соответствующий банер, однако проверка продолжается


Собственно скрипт:
Код:
    /*
  /*
  !!!
  Следует точно исполнять ниже данную инструкцию, иначе скрипт не сработает!
  !!!
  1) Зайдите в свой профиль IndieGala
  2) Раскройте "Giveaways library"
  3) Раскройте вкладку "Completed"
  4) Нажмите Ctrl+Shift+J, чтобы открыть консоль.
  5) Вставьте скрипт в консоль и нажмите Enter
  */

  //---------------------------------------------------------------------------
  var GAmenu = document.getElementById('collapseGiveaways');
  var completed = GAmenu.getElementsByClassName('giveaways-library-cont')[2];
  var amount = completed.getElementsByClassName('palette-color-7')[0]
  //---------------------------------------------------------------------------
  function getAmount(){
    var l=amount.innerHTML.length;
    var b='';
    for (var i = 1; i<l-1; i++) {
      b+=amount.innerHTML[i]
    }
    console.log('Amount of GA to check: '+b);
    return b;
  }
  //---------------------------------------------------------------------------
  function pressButt(n) {  /* Yeah. Press this butt (° ͜ʖ °) */
    var list=completed.getElementsByClassName('giveaways-completed-list')[0];
    var butt=list.getElementsByClassName('btn-check-if-won check-if-won palette-color-fff palette-background-4')[n];
    console.log('check');
    butt.click();
  }
  //---------------------------------------------------------------------------
  function tick() {
    if (k>=0) {
      pressButt(k);
      k=k-1;
    } else {
      clearInterval(time);
      console.log('All GAs are checked!')
    }
  }
  //---------------------------------------------------------------------------

  var am=getAmount();
  var k = am-1;

  var time=setInterval(tick,1001);

Также залил на Pastebin
PS Заделал профиль, залил с него, перелил ссылку :3
//-----
 
Последнее редактирование:


Скрипт работает. Но бывает пропускает пару строк.
upd.
Был выигрыш с раздач. Все нормально. Просто выскочило окно выигрыша, но он дальше проверял. нужно доработать немного. Т.к. из 90 он пропустил штук 6-7 :)
 
  • Like
Реакции: Justman
на главную бы, да с хорошим оформлением
 
  • Like
Реакции: OctopulusPaul
Очень годно! Скрипт продавать можно!
 
Молодец, а то мне реально лениво было пилить скрипт, т.к. вступаю там только в несколько самых дорогих раздач, поэтому проверять почти нечего.
Попробую на досуге запилить скрипт с автовступлением.

Кстати, строки может пропускать потому что ты условие в самом определении цикла for минусуешь, попробуй это делать внутри цикла.
 
Молодец, а то мне реально лениво было пилить скрипт, т.к. вступаю там только в несколько самых дорогих раздач, поэтому проверять почти нечего.
Попробую на досуге запилить скрипт с автовступлением.

Кстати, строки может пропускать потому что ты условие в самом определении цикла for минусуешь, попробуй это делать внутри цикла.
Думаю это из-за скорости. Когда поставил интервал чуть больше, уже не замечал подобного. Сейчас поставил 1001мс, т.к. у них, ограничение, скорее всего, ровно секунда
 
  • Like
Реакции: OctopulusPaul
Думаю это из-за скорости. Когда поставил интервал чуть больше, уже не замечал подобного. Сейчас поставил 1001мс, т.к. у них, ограничение, скорее всего, ровно секунда
Может быть и так, но таки условие цикла в самом определении вроде бы не по правилам изменять :)
 
Может быть и так, но таки условие цикла в самом определении вроде бы не по правилам изменять :)
Не, в первом параметре for'а, наколько помню, можно что угодно писать, это просто то, что выполнится до цикла
 
Не, в первом параметре for'а, наколько помню, можно что угодно писать, это просто то, что выполнится до цикла
Ой, это я туплю, мне показалось у тебя там декремент в условии был прописан, а там просто l-1 :)
Код просто наспех глазами пробежал, когда увидел в комментах что пропускает строки.
Значит точно дело было в интервале.
 
  • Like
Реакции: Justman
Где файл скачать ?
 
14akm0j.jpg
скрипт для Greasemonkey / Violentmonkey https://gist.github.com/SyavaK/a1b9f497eb75eda5d49a5272ec416b4c
нажимаем кнопку Raw и устанавливаем скрипт
 
Последнее редактирование:
  • Like
Реакции: Justman
оооо я в авторах
так это твой скрипт , я добавил кнопку и запихнул в грейсмонкей
Странно, у меня кнопка не видна
какой браузер ? скрипт вообще запущен ?
2dcanm9.jpg

я в ява нуб но у меня этот скрипт работает вдвух браузерах в макстоне и мозиле

кто еще пробовал скрипт отпишите о работоспособности и какой браузер
 
Последнее редактирование:
так это твой скрипт , я добавил кнопку и запихнул в грейсмонкей

какой браузер ? скрипт вообще запущен ?
2dcanm9.jpg

я в ява нуб но у меня этот скрипт работает вдвух браузерах в макстоне и мозиле

кто еще пробовал скрипт отпишите о работоспособности и какой браузер
В тормозиле работает нормально и через обезьяну тоже работает, только кто же юзерским скриптам даёт расширение java?
 
  • Like
Реакции: testawrebirth
так это твой скрипт , я добавил кнопку и запихнул в грейсмонкей

какой браузер ? скрипт вообще запущен ?
2dcanm9.jpg

я в ява нуб но у меня этот скрипт работает вдвух браузерах в макстоне и мозиле

кто еще пробовал скрипт отпишите о работоспособности и какой браузер
А блин, я с TamperMonkey сижу, сейчас попытаюсь адаптировать
 
В тормозиле работает нормально и через обезьяну тоже работает, только кто же юзерским скриптам даёт расширение java?
спс за ответ , чет непонял про расширение
мне казалось расширение есть у файлов а я тут никаких файлов не выкладывал
 
А блин, я с TamperMonkey сижу, сейчас попытаюсь адаптировать

в мозиле у меня Greasemonkey
а в макстоне Violentmonkey


TamperMonkey кажется в хроме ?
хром у меня барахлит чет (непользуюсь)