Скрипты на JavaScript для Алиэкспресс

Тема закреплена бессрочно

Пользуетесь ли этими скриптами?

  • Да

    Голосов: 290 64,6%
  • Нет

    Голосов: 159 35,4%

  • Всего проголосовало
    449
Do you know how to get back webmoney payment for ali?
 
Andronio а возможно сделать кнопку копирования адреса доставки с али ?
С этой страницы https://ilogisticsaddress.aliexpress.com/addressList.htm
Сделать можно все, насколько это востребовано?

Do you know how to get back webmoney payment for ali?
 
  • Like
Реакции: Sіmi и acconcia123
Обновлённый скрипт для авторизации на Скидка.ру

Баги или пожелания по скрипту в лс.
p.s. код не смотреть, сделано лишь бы работало.

JavaScript:
// ==UserScript==
// @name         Skidka - auth.
// @namespace    http://tampermonkey.net/
// @version      0.2
// @author       Dimokin
// @match        https://skidka.ru
// @match        https://skidka.ru/user/auth/
// @match        https://skidka.ru/shops/details/aliexpress-keshbek/
// @match        https://skidka.ru/user/goto/72/
// @grant        none
// @require http://code.jquery.com/jquery-3.3.1.min.js
// ==/UserScript==
(function() {
    'use strict';

    var $ = window.jQuery;

    var MY_MAIL = 'ПОЧТА';
    var MY_PASSWORD = 'ПАРОЛЬ';

    $(document).ready(function() {
        setTimeout(function() {
            if (window.location.href === 'https://skidka.ru/') {
                window.location.href = 'https://skidka.ru/user/goto/72/';
            } else if (window.location.href === 'https://skidka.ru/user/goto/72/') {
                setTimeout(function() {
                    if ($('.goto-not-logged__buttons').length) {
                        window.location.href = $('.goto-not-logged__buttons a').attr('href');
                    }
                }, 1000);
            } else {
                let nativeInputValueSetter = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, 'value').set;

                setTimeout(function() {
                    let login = document.querySelector('.auth__phone-input input');
                    let pass = document.querySelector('.pass-input  input');

                    nativeInputValueSetter.call(login, MY_MAIL);

                    login.dispatchEvent(new Event('change', {
                        bubbles: true
                    }));
                    login.dispatchEvent(new Event('input', {
                        bubbles: true
                    }));

                    nativeInputValueSetter.call(pass, MY_PASSWORD);

                    pass.dispatchEvent(new Event('change', {
                        bubbles: true
                    }));
                    pass.dispatchEvent(new Event('input', {
                        bubbles: true
                    }));

                    setTimeout(function() {
                        $(".auth__buttons button").trigger('click');

                        setTimeout(function() {
                            window.location.reload();
                        }, 1000);
                    }, 1000);
                }, 1000);
            }
        }, 1000);
    });
})();
переходы учитывает, а кэшбэк ни один не залетел(((

Screenshot_1.png
 
@Andronio
Сделай пожалуйста в своем скрипте AliExpress country changer возможность смены языка на английский, для 20/20 очень пригодилось бы
 
  • Like
Реакции: Volk7
А разве вы не фиксируете в своей табличке адрес доставки ?
Я делаю наоборот, у меня на 10 лет вперед сгенерированы имена, адреса и телефоны и я беру из таблички следующий адрес и вставляю в адрес.
 
  • Like
Реакции: readdead01
Я делаю наоборот, у меня на 10 лет вперед сгенерированы имена, адреса и телефоны и я беру из таблички следующий адрес и вставляю в адрес.
просто интересно, сколько это в количестве)?
 
просто интересно, сколько это в количестве)?
Касательно имен и адреса, я сделал так: имя и фамилию сковеркал всеми возможными способами (Andrey, Andrei, Andrew, Andriy и т.д., тоже самое с фамилией), далее сделал комбинацию каждого имени с каждой фамилией. Получилось более 10 тыс. вариантов. Перемешал их случайным образом, чтобы не было рядом вариантов со сменой одной буквы. Тоже самое с адресом. Проблема с телефоном, там всего 1000 вариантов +7-777-777-777/123. Сейчас уже идет второй номер.
 
  • Like
Реакции: Volk7
Касательно имен и адреса, я сделал так: имя и фамилию сковеркал всеми возможными способами (Andrey, Andrei, Andrew, Andriy и т.д., тоже самое с фамилией), далее сделал комбинацию каждого имени с каждой фамилией. Получилось более 10 тыс. вариантов. Перемешал их случайным образом, чтобы не было рядом вариантов со сменой одной буквы. Тоже самое с адресом. Проблема с телефоном, там всего 1000 вариантов +7-777-777-777/123. Сейчас уже идет второй номер.
Алгоритм я и так понял, просто любопытно сколько вышло в итоге на 10 лет))))
 
есть ссылочка как использовать эти скрипты? Какое расширение использовать?
 
  • Like
Реакции: Gifts
есть ссылочка как использовать эти скрипты? Какое расширение использовать?
Там описание как ставить
 
  • Like
Реакции: SurpriseMZFK
Спасибо, помогло
 
Смену страны так и не победили в профиле?
 
Накидал по быстрому такой скрипт, товары только не прячет, вроде работает:

JavaScript:
// ==UserScript==
// @name         SS
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        *://*.aliexpress.com/wholesale*
// @match        *://*.aliexpress.ru/wholesale*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    var first_trigger=true;

   // console.log('START');

    window.onload = function(){

        if(first_trigger){

/*
       localStorage.setItem("second", "true");
       var setting = localStorage.getItem("second");
       console.log(setting);
*/


  document.getElementsByClassName('nav-breadcrumb')[0].insertAdjacentHTML('afterend',`<div style="position:relative;border-radius:3px;text-align:center; top:5px;padding-top:5px;padding-bottom:5px;width:112px;background:#ef0000;color:white">Дополнить

<div id="s_inp_cost" style="position:absolute;border-radius:3px;display: inline-block;border:none;background:blue;top:0px;height:100%; left:117px;">
<input id="avg_id" value="" style="line-height:1.51em;width:4.5em;" placeholder="avg" autocomplete="off" value="" >

</div>
<div id="vai" style="position:absolute;background:orange;user-select:none;cursor:pointer;left:14em;width:60px;text-align:center; top:0px;border-radius:3px;padding-top:5px;padding-bottom:5px;">OK</div>
</div>

                                      `);

document.getElementById('vai').addEventListener('click',comecar);


        function comecar(event){

        var preco = document.getElementById('avg_id').value.toString();

            var tipo = -1;



            var tem_un_ponto = preco.indexOf('.');
            if(tem_un_ponto>-1){ tipo = 1; }
            else{
             var o_primeiro = preco.substring(0,1);
                 if(o_primeiro === '0'){ tipo = 2; }else{

                     tipo = 3;

            }

            }//else nao ponto


        //    console.log(tipo);

            var min_set = document.querySelector("input[placeholder='min']");
            var max_set = document.querySelector("input[placeholder='max']");

if(!min_set){

           min_set = document.querySelector("input[placeholder='мин']");
           max_set = document.querySelector("input[placeholder='макс']");
}


          var nivs = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, 'value').set;

            min_set.focus();


            switch(tipo){

                case 1:
                   // min_set.value = preco;
                   // max_set.value = preco;


                    nivs.call(min_set, preco);
                      min_set.dispatchEvent(new Event('change', {bubbles: true}));
                      nivs.call(max_set, preco);
                      max_set.dispatchEvent(new Event('change', {bubbles: true}));


                    ;break;

                case 2:
                  //  min_set.value = o_primeiro +'.'+preco.substring(1);
                  //  max_set.value = o_primeiro +'.'+preco.substring(1);

                      nivs.call(min_set, o_primeiro +'.'+preco.substring(1));
                      min_set.dispatchEvent(new Event('change', {bubbles: true}));
                      nivs.call(max_set, o_primeiro +'.'+preco.substring(1));
                      max_set.dispatchEvent(new Event('change', {bubbles: true}));

                    break;

                case 3:
                   // min_set.value = o_primeiro +'.'+preco.substring(1);
                   // max_set.value = o_primeiro +'.'+preco.substring(1);
                      nivs.call(min_set, o_primeiro +'.'+preco.substring(1));
                      min_set.dispatchEvent(new Event('change', {bubbles: true}));
                      nivs.call(max_set, o_primeiro +'.'+preco.substring(1));
                      max_set.dispatchEvent(new Event('change', {bubbles: true}));



                    ;break;


                   }

  //click price
       var gogo = document.querySelector('a.ui-button.narrow-go');

       if(gogo){gogo.click();



               }





          




            var target = document.getElementsByClassName('list-items')[0];

const config = {
    attributes: true,
    childList: true,
    subtree: true
};





            // Функция обратного вызова при срабатывании мутации
const callback = function(mutationsList, observer) {



    for (let mutation of mutationsList) {

        if (mutation.type === 'childList') {


//free ship click
            var envio_gratis = document.querySelectorAll("span span.next-checkbox-label span");

            for (var ips = 0; ips < envio_gratis.length; ips++) {
                if (envio_gratis[ips].textContent == "Free Shipping" || envio_gratis[ips].textContent == "Бесплатная Доставка") {
                envio_gratis = envio_gratis[ips];
                break;
                }
           }



                if(envio_gratis.parentElement.parentElement.getElementsByClassName('next-checkbox')[0].getElementsByTagName('input')[0]){
            if(!envio_gratis.parentElement.parentElement.getElementsByClassName('next-checkbox')[0].getElementsByTagName('input')[0].checked){
            envio_gratis.click();
              //  envio_gratis.parentElement.parentElement.getElementsByClassName('next-checkbox')[0].getElementsByTagName('input')[0].checked==='true';
            } }


             observer.disconnect();




        }

    }


};//callback



const observer = new MutationObserver(callback);
observer.observe(target, config);





        }//comecar


            first_trigger=false;



        }//!first_trigger


    }



})();
---------Двойное сообщение соединено: ---------
Теперь скрывает товары, скрипт не влазит в сообщение, поэтому в файле

Скрипт работает?? Почему-то ничего не происходит
 
Подправил скрипт для форума, игнорирование картинки из ссылки.

Andronio, мил человек, сделай плизззззз к этому скрипту опцию чтобы показывались только сообщения с лайками пользователей!

Сил нет больше читать горы флуда в ветках Алиэкспресс на форуме, которые появились за последние дни!!!!
 
  • Like
Реакции: Sersem444
Andronio, мил человек, сделай плизззззз к этому скрипту опцию чтобы показывались только сообщения с лайками пользователей!
Чтобы показывались сообщения только если есть лайки? Все остальные скрывать? Тогда будут пустые страницы. :lol:
 
@Andronio Сделай пожалуйста чтобы в скрипте country changer можно было язык тоже менять. Очень нужна сейчас с 2020 купонами