Получаем красивый список своих сетов и их готовности

Justman

Даэдрот такой
Дней с нами
3.255
Розыгрыши
0
Сообщения
1.853
Репутация
214
Реакции
2.447
Всё пробовал на ЯБраузере и GoogleChrome, возможны баги на других браузерах. Не стесняйтесь говорить об ошибках

Можно пойти двумя путями:
1-й - использование скрипта для браузера (быстро, не требует никаких установок, требуется проделывать каждый раз по необходимости)
2-й использование расширения Tampermonkey (установка требует время, однако после неё список можно получить просто зайдя на страницу со значками)

В обоих случаях список получается на странице http://steamcommunity.com/id/*Ваш Steam ID*/badges*

1) Заходим на страницу
2) Открываем консоль браузера (Ctrl+Shift+J)
3) Вставляем данный код:
Код:
    'use strict';
    //function
    function clearname(name) {
      var q=0;
      while (name.charCodeAt(q)==10 ||name.charCodeAt(q)==9) {
        q+=1;
      }
      var r=q;
      while (name.charCodeAt(r)!=9) {
        r+=1;
      }
      return(name.slice(q,r));
    }
    //-------------
    function clearinfo(info) {
      var q=0;
      while (info.charCodeAt(q)>57 || info.charCodeAt(q)<48) {
        q+=1;
      }
      var r=q+2;
      while (info.charCodeAt(r)>57 || info.charCodeAt(r)<48) {
        r+=1;
      }
      var a=info.slice(q,r+2);
      if (a.charCodeAt(a.length-1)>57 ||a.charCodeAt(a.length-1)<48) {a=a.substring(0,a.length-1);}
      return(a);
    }
    //Beginning, creating elements
    var upper=document.getElementsByClassName('profile_xp_block')[0];
    var myblock=document.createElement('div');
    myblock.setAttribute('style','border: 2px solid #000; padding: 10px; height: 150px; width: 500px');
    myblock.innerHTML='<font color="white" size="4">Your sets list:</font><br>'+
    '<form name="my-form"> <input name="start_button" type="button" value="Get set info"><br><br>'+
    '<textarea name="my-input" cols="68" rows="5" style="resize: none;">Press the button to get your sets info</textarea></form>';
    upper.insertBefore(myblock, upper.lastChild);
    //Analyze
    document.addEventListener('click', function(event) {
    if(event.target.getAttribute('name') == 'start_button') {
        document.forms["my-form"].elements["start_button"].value='Check the form below';

        var text='';
        var list=document.getElementsByClassName('badges_sheet')[0];
        var l=list.getElementsByClassName('badge_row is_link').length;
        var i=0;
        var t='';

        while (i!=l) {
          var main=list.getElementsByClassName('badge_row is_link')[i];

          if ((main.innerHTML.indexOf('badge_progress_info')!=-1 && main.innerHTML.indexOf('badge_title_stats_drops')!=-1) || main.innerHTML.indexOf('badge_craft_button')!=-1) {
            t=main.getElementsByClassName('badge_title')[0].innerHTML;
            text=text+clearname(t);
            if (main.innerHTML.indexOf('badge_craft_button')!=-1) {
              text=text+' [FULL]';
            } else if (main.innerHTML.indexOf('badge_progress_info')!=-1) {
              t=main.getElementsByClassName('badge_progress_info')[0].innerHTML;
              text=text+' ['+clearinfo(t)+']';
            }
            if (main.innerHTML.indexOf('steam://run/')!=-1) {
              text=text+' [Will drop more cards]';
            }
            text=text+'\n';
          }
          i+=1;
        }
        document.forms["my-form"].elements['my-input'].value=text;
      }
    });
4) Жмём "Enter"
5) Жмём кнопку в появившейся наверху формы
6) Получаем список
1) Переходим на панель TM и создаём новый скрипт
2) Вместо всего, что там было вставляем код с PasteBin
3) Заходим на страницу
4) Жмём "Enter"
5) Жмём кнопку в появившейся наверху формы
6) Получаем список

7c8fe47c5040400cbac948cb9683efb3.png
 
Последнее редактирование:
  • Like
Реакции: ISYD
Всё пробовал на ЯБраузере и GoogleChrome, возможны баги на других браузерах. Не стесняйтесь говорить об ошибках
Попробовал 2 способ - не работает. Яндекс Браузер
1 работает
 
Поправил ошибку с адресом, спасибо Camelva
 
Огнелис все ок
0ad62902a56559fab247d8069d4e9f0e.png
 
  • Like
Реакции: Justman
работает но зачем это?