Обсуждение купонов Aliexpress - Май 2020 год

Статус
В этой теме нельзя размещать новые ответы.
Улучшения скриптов

Скрипт ввода wmid и пароля. Добавил нажатие на вернуться к списку заказов. Почему я не сделал раньше - не знаю.
Код:
// ==UserScript==
// @name         E-NUM press
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  Скрипт ввода wmid и пароля
// @author       Andronio
// @match        https://merchant.web.money/lmi/payment_conf.asp
// @match        https://merchant.web.money/lmi/SignedLoginFormNewWC.asp*
// @match        https://psp.wmtransfer.com/payment/process/*
// @match        https://merchant.web.money/lmi/payment_do.asp
// @match        https://shoppingcart.aliexpress.com/order/payResult.htm?cashierRequestNo*
// @grant        none
// ==/UserScript==

let mwIdVal = "000000000000";
let wmPassVal = "000000000";



(function repeat() {
    'use strict';
    let href = window.location.href;

    if (href == "https://merchant.web.money/lmi/payment_conf.asp") {
        let enumCode = document.getElementById("ConfirmENum");
        let confirmButton = document.getElementById("do_payment");
        let askENUM = document.getElementById("ConfirmENumSend");

        if (askENUM) askENUM.click();
        if (!enumCode) {
            setTimeout(repeat, 500);
        } else {
            if (enumCode.value == ""){
            // Запуск таймера
            setTimeout(repeat, 500);
            } else {
                confirmButton.click();
            }
        }
    }
    if (/psp\.wmtransfer\.com\/payment\/process\//.test(href)) {
        let returnButton = document.getElementById("returnToMerchant");
        if (!returnButton) {
            setTimeout(repeat, 500);
        } else {
            if (returnButton.clientWidth == 0) {
                setTimeout(repeat, 500);
            } else {
                    returnButton.click();
            }
        }
    }
    if (/merchant\.web\.money\/lmi\/SignedLoginFormNewWC\.asp/.test(href)) {

        let wmId = document.getElementById("wmcheck_no");
        let wmPass = document.getElementById("wmcheck_pwd");
        let wmCapt = document.getElementById("mobilecaptcha");
        let wmAuth = document.getElementById("auth");

        if (wmId && wmPass) {
            if (wmPass.parentNode.parentNode.classList.contains('js-hidden')) {
                if (wmId.value == "") {
                    wmId.value = mwIdVal;
                    wmCapt.focus();
                }
                setTimeout(repeat, 500);
            } else {
                if (wmPass.value == "") {
                    wmPass.value = wmPassVal;
                    if (wmId.value == "") {
                        wmId.value = mwIdVal;
                        wmCapt.focus();
                    }
                }
                if (wmCapt.value != "") wmAuth.click();
            }
        } else {
            setTimeout(repeat, 500);
        }
    }
    if (href == "https://merchant.web.money/lmi/payment_do.asp") {
        let backButton = document.getElementById("back_toshop");
        if (backButton) {
            backButton.click();
        } else {
            setTimeout(repeat, 500);
        }
    }
    if (/shoppingcart\.aliexpress\.com\/order\/payResult\.htm/.test(href)) {

        let mybtn = document.querySelectorAll(".operation-container > .next-btn-primary")

        if (mybtn.length != 0) {
            mybtn[1].click();
        } else {
            setTimeout(repeat, 500);
        }
    }
})();
 


Скрипт получения информации из заказа. Если много заказов, то считать заказы сложно, поэтому начало названия товара добавил в кнопку. Также добавил ссылку на картинку-превью в информацию. Перед ссылкой стоит префикс picURL=, его можно отключить.
Код:
// ==UserScript==
// @name         Aliexpress Order info getter
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  Получение информации из заказа
// @author       Andronio
// @match        https://trade.aliexpress.ru/orderList.htm*
// @match        https://trade.aliexpress.ru/order_list.htm*
// @match        https://trade.aliexpress.com/orderList.htm*
// @match        https://trade.aliexpress.com/order_list.htm*
// @noframes
// ==/UserScript==

/*
prodName  - Название товара
prodPrice - Цена товара
today     - Сегодняшняя дата
orderNum  - Номер заказа
\t        - Табуляция, переход к следующей ячейке
Строка должна начинаться и заканчиваться символом обратной кавычки
*/


var myStr = `prodName + '\t' + picURL + '\t' + prodPrice + '\t' + today +  '\t' + orderNum`;
let picPrefix = 1; // 1 - добавлять префик picURL= для адреса картинки, 0 - не добавлять

(function () {
    'use strict';

// Рисуем окно с кнопками
    var div = document.createElement('div');
    div.className = 'mybox';

    let product = document.querySelectorAll('.order-item-wraper');
    if (product.length == 0) {
        div.innerHTML = '<p class="noorders">Нет заказов</p>';

    } else {
        div.innerHTML = `<button class="mybutton" myattr="-1">Все заказы</button>`;
        for (let i = 0; i < product.length; i++) {
            let productName = product[i].querySelectorAll(".product-title > a.baobei-name")[0].getAttribute("title").substr(0,20);
            div.innerHTML += `<button class="mybutton" myattr="${i}">${i+1} - <span style="color:green">${productName}</span></button>`;
        }
    }
    document.body.append(div);

    var styles = `
    .mybox {
    position: fixed;
    top: 0;
    right: 0;
    background: white;
    box-shadow: 1px -1px 4px 1px;
    max-width: 40%;
    max-height: 400px;
    padding: 10px 10px;
    overflow-y: auto;
    overflow-x: hidden;
    z-index:9999;
    }

    .noorders {
    color: red;
    text-align: center;
    font-size: 1.5em;
    padding: 5px;
    margin: 0;
    }

    .mybutton {
    display: block;
    margin-right:auto;
    margin-top: 2px;
    cursor:pointer;
    padding: 5px;
    width: 180px;
    text-align: left;
    }

    .redbutton{
    background-color: red;
    }`

    var styleSheet = document.createElement("style")
    styleSheet.type = "text/css"
    styleSheet.innerText = styles
    document.head.append(styleSheet)
    div.addEventListener('click', buttonClick);
})();

function buttonClick(event) {
    let elem = event.target;
    if (elem.tagName != "BUTTON") {
        elem = elem.parentNode;
        if (elem.tagName != "BUTTON") return;
    }
    let num = +elem.getAttribute('myattr');
    let orderNumber = document.querySelectorAll(".order-info > .first-row > span.info-body");
    let product = document.querySelectorAll('.order-item-wraper');
    let productPrice = document.querySelectorAll(".amount-num");
    let today = formatDate();

    let orderString, prodName, prodPrice, orderNum;

    if (num > -1) {
        // один заказ
        let productName = product[num].querySelectorAll(".product-title > a.baobei-name");
        let picURL = product[num].querySelectorAll(".pic.s50 > img")[0].src;
        if (picPrefix) picURL = "picURL=" + picURL;
        prodName = `=ГИПЕРССЫЛКА("https:\/\/www.aliexpress.ru\/item\/${productName[0].getAttribute("productid")}.html";` +
            `"${productName[0].getAttribute("title").substr(0,80)}")`;
        prodPrice = productPrice[num].innerText.match(/\d+\.\d+/);
        if (prodPrice)
            prodPrice = prodPrice[0].replace(/\./,",");
        else
            prodPrice = productPrice[num].innerText.trim();
        orderNum = orderNumber[num].innerText;
        orderString = eval(myStr);
    } else {
        // много заказов
        orderString = "";
        for (let num = 0; num < orderNumber.length; num++) {
            let productName = product[num].querySelectorAll(".product-title > a.baobei-name");
            let picURL = product[num].querySelectorAll(".pic.s50 > img")[0].src;
            if (picPrefix) picURL = "picURL=" + picURL;
            prodName = `=ГИПЕРССЫЛКА("https:\/\/www.aliexpress.ru\/item\/${productName[0].getAttribute("productid")}.html";` +
                `"${productName[0].getAttribute("title").substr(0,80)}")`;
            prodPrice = productPrice[num].innerText.match(/\d+\.\d+/);
            if (prodPrice)
                prodPrice = prodPrice[0].replace(/\./,",");
            else
                prodPrice = productPrice[num].innerText.trim();
            orderNum = orderNumber[num].innerText;
            orderString += eval(myStr);
            orderString += "\r\n";
        }
    }

    navigator.clipboard.writeText(orderString).then(function () {
        console.log('Async: Copying to clipboard was successful!');
    }, function (err) {
        console.error('Async: Could not copy text: ', err);
    });

    window.mybtn = elem;
    window.mybtn.classList.add("redbutton");
    setTimeout(() => window.mybtn.classList.remove("redbutton"), 500);
}

function formatDate() {
    let date = new Date();
    let dd = date.getDate();
    if (dd < 10)
        dd = '0' + dd;
    let mm = date.getMonth() + 1;
    if (mm < 10)
        mm = '0' + mm;
    let yy = date.getFullYear() % 100;
    if (yy < 10)
        yy = '0' + yy;
    return dd + '.' + mm + '.' + yy;
}

Для загрузки картинки из инета в экселе сделал скрипт, его надо повесить на кнопку. Надо выделить нужные строки и нажать кнопку. Const piccell As Integer = 6 - указывает номер столбца где ищутся картинки.
Код:
Sub GetPics()

Const piccell As Integer = 6
Dim begincell As Integer, endcell As Integer
begincell = Selection.Cells(1).Row
endcell = Selection.Cells(Selection.Cells.Count).Row

For i = begincell To endcell
    If InStr(Cells(i, piccell).Value, "picURL=") Then
        path_string = Right(Cells(i, piccell).Value, Len(Cells(i, piccell).Value) - 7)
        iLeft = Cells(i, piccell).Left
        iTop = Cells(i, piccell).Top
        iHeight = Cells(i, piccell).Height
        With ActiveSheet.Pictures.Insert(path_string)
            .Top = iTop
            .Left = iLeft
            .Width = iHeight
            .Height = iHeight
        End With
        Cells(i, piccell).Value = ""
    End If
Next i

End Sub
Только не спрашивайте меня как установить Скрипт для Excel VBA. Вот моя таблица для примера https://drive.google.com/file/d/1lsqf3DU1ibRWOIAnQZBvFXHKe0eCbvFx/view?usp=sharing
 
Кто-то недавно писал, что бронирование товара происходит не в момент оформления заказа, а в момент оплаты - нашел подтверждение. Оформлял центы дней 10 назад и вот только решил оплатить первые штук 10 прошло, а дальше - не проходит платеж на вебмани, ошибка намекает на нехватку чего-то. А оказывается, на странице товара продавец поставил уже "нет в наличии".
Посмотреть вложение 153176
Логично, что тоже самое может быть и не с центами, а с любым товаром, так что "мариновать" сильно долго не стоит, может оказаться потраченными усилиями.
Это точно не так работает, но какие-то есть нюансы. Грубо говоря можете проверить, если у товара написано что осталось 1 штука, то можете заказать с двух аков и даст заказать. А потом даст и оплатить. Такое в свое время проворачивали с повышенкой, когда мало её оставалось, то заказывали и кидали в неоплату, а потом оплачивали скопом. Возможно требуется, что бы именно продавец лот закрыл. А может какое-то время у али на это требуется.
 
Как реагирует купон на изменение продавцом цены ?
 
Что с курсом на завтра?
 
  • Like
Реакции: molohk
Скрипт получения информации из заказа. Если много заказов, то считать заказы сложно, поэтому начало названия товара добавил в кнопку. Также добавил ссылку на картинку-превью в информацию. Перед ссылкой стоит префикс picURL=, его можно отключить.
скрипты запускаются в tampermonkey??
 
letyshops оказался большим гавном чем EPN . епн скрысил 50 баксов а летишопс 300 баков. " К сожалению, ваш аккаунт не может быть разблокирован. В силу нарушения клиентского соглашения, пункт 9.2.1: "Получение сообщения от Рекламодателя о случаях, когда сумма подлежащего начислению Клиенту кэшбэка является большей, чем фактическая сумма оплаты заказа". дебилы мля
центы?
 
Это точно не так работает, но какие-то есть нюансы. Грубо говоря можете проверить, если у товара написано что осталось 1 штука, то можете заказать с двух аков и даст заказать. А потом даст и оплатить.
Оно да, но если продавец успеет до оплаты поставить 0 штук - то будет такая ерунда как у меня. А количество на странице часто фиктивно стоит, я тоже заказывал и платил сразу где по 1 штуке стояло, несколько раз. Но в таком случае, оно и после оплаты не менялось.
Что оплата тоже не 100% гарантия - это понятно, продавцы и так не всегда шлют. Но шансов все-таки больше будет, да и не будет испорченных аккаунтов-купонов)

(если не забуду, то гляну что с количеством товара происходит после оформления но неоплаты заказа).
.
Скорее всего не меняется. Читай выше, оно иногда и после оплаты не меняется. Мб у продаванов есть разные режимы установки количества, когда учитывается оплата или нет, хз ...

А вот дальнейшая логика мне непонятна. Почему не дало оплатить когда товар был в наличии и почему дало оплатить когда товара не было в наличии - хз.
Буду проверять на своих аках на днях, если будут похожие странности - отпишусь)
 
  • Like
Реакции: yarikqwerty и Hidemi
Как же он замахал... Есть ли какой то фильтр на уровне форума на такие хрени?
Про новорегфильтр знаю.
я говнокартинок не вижу. ставил скрипт какой-то уже давно
 
Вот на счет получения 500/1000 и получения 4/5 хз, так как 4/5 даются по ссылкам с бурж версии, а чтобы дало 500/1000 нужна рега с ру версии
500/1000 уже не дают. Give 799,55 руб. & Get 499,72 руб. – All on Us, of Course
хотя я сам уже запутался на ЮСА Give US $12.48 & Get US $7.80 – All on Us, of Course
---------Двойное сообщение соединено: ---------
Всем доброго утра ток встал зарядил пистолет а тут на тебе 3,99 выгрузили новых,
Посмотреть вложение 153168
кто когда встал, тогда и утро )
 
Как реагирует купон на изменение продавцом цены ?
Кроме трепещет - никак. Ниже чем верхняя граница купона - прод цену изменить не сможет.
Что с курсом на завтра?

upload_2020-5-6_21-7-59.jpeg
 
ну я смотрю люди написали что за сегодня второй сыпит 0,98.. не знаю от чего зависет конечно.... у меня всё везде почти одинаково , но с 40 утренних аккаунтов ... пока что на 17 дало 3,99 и на 5 дало 0,98 на 1 (0,98+секурити такого у меня никогда небыло на пистолетиках) ...
..
проверяю вот дальше обстрел :cerealguy: .... предпологаю это рандом на удачу :derpstare:

до пропажи 3,99 почти всегда сыпало 3,99 даже чётвертый раз :derphappy:
 
  • Like
Реакции: Prosto_4elovek
Оно да, но если продавец успеет до оплаты поставить 0 штук - то будет такая ерунда как у меня. А количество на странице часто фиктивно стоит, я тоже заказывал и платил сразу где по 1 штуке стояло, несколько раз. Но в таком случае, оно и после оплаты не менялось.
Что оплата тоже не 100% гарантия - это понятно, продавцы и так не всегда шлют. Но шансов все-таки больше будет, да и не будет испорченных аккаунтов-купонов)
Это да, но в большинстве случаев после оплаты количество падает. Например, когда доплата была 1 цент за купон, то добива 1 цент ничего не стоила, а за нее давали 1цент кэша, я тогда оплачивал полностью заказ и часто приходилось новые добивки искать, потому что на тех сразу после оплаты становилось что товара нет. А сейчас в неоплату кидаю и норм. Хотя нашел уже лоты где их не так мало, но чередую иногда все равно.
Я думаю может у продавца лоты могут быть по-разному настроены. У кого-то сразу после минусует, у кого-то нет. А так вы правы, лучше долго не мариновать, да и вообще смысла не вижу это делать, разве только тем, у кого кроет потом.
 
  • Like
Реакции: Qant
500/1000 уже не дают. Give 799,55 руб. & Get 499,72 руб. – All on Us, of Course
хотя я сам уже запутался на ЮСА Give US $12.48 & Get US $7.80 – All on Us, of Course
Почему не дают? Give 799,55 руб. & Get 499,72 руб. - это и есть 500/1000.
 
7.98/16 "паленой" картой кроет, или нормуль ?
 
Статус
В этой теме нельзя размещать новые ответы.