Request based Python module(s) to help with the Newegg raffle.

Overview

Newegg Shuffle

Python module(s) to help you with the Newegg raffle

How to use

$ git clone https://github.com/Matthew17-21/Newegg-Shuffle
$ cd Newegg-Shuffle
$ pip3 install -r requirements.txt
$ python3 main.py

File Structure

/data

  • emails.txt
    • Enter the emails you'd like to create accounts for.
  • proxies.txt
    • Proxies that'll be used when creating accounts.
  • settings.json
Key Type Description Options
output_filename String File name where the sessions will be saved -
version String Type of captcha you want to solve to create the account v2 or v3
captcha_solver String or int Captcha solving site Checkout the documentation.
keys dict dict containing keys to solving sites -
generate_random bool Should the program generate random password. true or false
choices array Array of password choices -
user_agents array Array of user-agents for mobile & desktop -

/newegg/*

  • Contains the core software code.

Creating Accounts

  • If you want to create accounts via mobile, change line 93 in main.py from desktop.Create_Account(self, email) to mobile.Create_Account(self, email)
    • And vice versa
  • MAKE SURE YOU STORE YOUR SESSIONS SOMEWHERE (Don't delete the .log file)

Submitting Entries

  • In order to submit entries, you must make sure:
    • The program will pull accounts/sessions from the filename that was used to create accounts (output_filename in the settings.json file).
    • Your .log file is in the main directory (alongside with main.py)
    • Accounts/Sessions are still in the .log file
    • The program will automatically enter on the same platform as the account was created (Desktop or App)
    • MAKE SURE YOU KEEP YOUR SESSIONS (Don't delete the .log file)

Recommendations

  1. MAKE SURE YOU STORE YOUR SESSIONS SOMEWHERE (Don't delete the .log file)
  2. Althought not completely necessary, but you should add/delete/randomify events for accertify.
  3. Make sure iOS app version is up to date
  4. Handle exceptions better
    • There are some exceptions, such as those from captchatools, that I did not handle.
  5. Use proxies (But they aren't required to run the script)
  6. If V2 Recaptcha pops up again, use that over V3

Notes

  • Failed captchas are normal.
  • Newegg disabled their V2 Recaptcha for creating accounts, making V3 the only option. Because all 3rd party solvers aren't the best at V3 captchas, there will be lots of failed captchas.
    • I recommend using anticaptcha for V3, but Capmonster & 2Captcha is also available.
  • Only tested on Python 3.7
    • Should work on other versions, but I can't promise anything.
  • This is intended for devs. If you aren't familiar with python, try not to change too much code as it might break something.
  • This isn't a reflection of how I actually write code so pls don't judge too hard 😂
    • I've been writing in Go lately, hence the structure of the whole thing.
  • There are lots of ways to make this better, cleaner and better on memory. If I find time, I'll update this repo.

Maintenance

  • This bot is fully functional with success. I won't be working on it much. I'll only work on it when:
    • They make some massive change
    • Have loads of free time and can complete the to do list
  • Pull requests are always welcome
  • If any issues were to arise, open an issue
    • Please incude:
      • Python version
      • Error
      • How to replicate
  • You may also contact me on discord - Matthew#6937 with any questions or concerns

FAQ

  1. Does this work out of the box?
    • Yes, however, you do need change some info.
  2. Can I use these accounts for the raffle?
    • Yes.
  3. Should I use the mobile or desktop module?
    • Use the same mode you'll be using to enter raffles.
      • Entering raffle via app, use the mobile version to create account.
      • Entering raffle via desktop, use the desktop version to create account.
  4. How do I use the captchatools?

Success

Genning Running Success

TO DO

  1. [] Clean up & document code
  2. [] Release GUI version
  3. [] Maybe a folder for logs?
  4. [] Release in Go
  5. [] Inherit, don't pass.
Comments
  • Error

    Error

    im trying to run the program but when i do the submit entries selection and select the cards i want to submit for it says "enter amount of tasks at a time" and no matter what i put there it just closes with no warning .

    also when i create an account it says "failed to parse: Https://user:[email protected]:port/" i thought i didnt need a proxy for it.

    i already have an account. how would i just use my current credentials.

    opened by jjmotox 9
  • Ticket expired. Getting new one.

    Ticket expired. Getting new one.

    Unable to create Newegg accounts. After solving captcha, error is "Ticket expired. Getting new one." Was working fine last night, but now haven't been able to create an account successfully.

    Screen Shot 2021-06-13 at 8 54 08 AM
    opened by redfoxcrypto 3
  • Submitting Entries

    Submitting Entries

    I keep having this issue where so many accounts get submitted then no more are done after this, I have tried switching between v2 and v3, as well as changing from 2captcha to capmonster. image

    opened by collinmyers 3
  • Error Getting Raffle Items

    Error Getting Raffle Items

    Program was working until recently an error in given when attempting too fetch raffle items

    Python(3.8.10)

    Expecting property name enclosed in double quotes: line 1 column 3 (char 2) [ERROR GETTING RAFFLES]

    --This line of code throws error raffle_products = json.loads(re.findall(r"{.+[:,].+}", res.text)[1].split("")[0])

    raffles.py

    opened by mew32jfd 2
  • Just some questions

    Just some questions

    First of all, thanks!

    I got it up and running, using proxies and anticaptcha.

    I am using 33mail to create aliases that go into one (new) gmail inbox.

    Im getting a lot of emails from newegg asking to verify email, while some (very few, in comparison) seem to have been registered without needing a verification.

    Is this a by-product of the anti-captcha process? Should I be attempting to verify these emails using the credentials from the log? Something tells me doing so from my normal-ass IP will trigger a blacklist from newegg.

    Also, in my accounts created log, I have several "unknown errors", with the other log saying 'send code over limit'

    My programming/python knowledge is limited but I'd be happy to work on this further with anyone via discord. I think the discord webhooks would be awesome, as well as outputting the log/accounts into CSV, using a spreadsheet to view this data would be a lot easier.. Im just not used to botting and dont wanna fuck myself up by using unverified accounts.

    opened by srvoets 2
  • No such file or directory

    No such file or directory

    Traceback (most recent call last): File "C:\Newegg-Shuffle-main\main.py", line 19, in <module> with open("./data/settings.json") as settingsFile: FileNotFoundError: [Errno 2] No such file or directory: './data/settings.json'

    Thank you for your help in solving the previous issue. I got it running and then i got this one that seems like its not seeing the settings file but its at "C:\Newegg-Shuffle-main\data\settings.json"

    bug 
    opened by xBlackPoison357x 2
  • SSL Error Line 82

    SSL Error Line 82

    I'm getting Error on line 82 SSLError HTTPSConnectionPool(host='www.newegg.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1129)')))

    Running on Windows.

    opened by coreyjs3308 1
  • Captcha V2

    Captcha V2

    This line should be set to "v2" not "v3" otherwise setting "v2" in the settings.json results in a UnboundLocalError: local variable 'sitekey' referenced before assignment error when executing the program

    https://github.com/Matthew17-21/Newegg-Shuffle/blob/a973de121d45d839464a9bb83665c9d633afa9b8/main.py#L38

    opened by thebetauser 1
  • Error trying to install requirements using

    Error trying to install requirements using "pip3 install -r requirements.txt"

    `C:\Users\trexl>pip3 install -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt Requirement already satisfied: captchatools in c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 1)) (1.0.0) Requirement already satisfied: requests in c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 2)) (2.25.1) Requirement already satisfied: bs4 in c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 3)) (0.0.1) Requirement already satisfied: colorama in c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 4)) (0.4.4) Requirement already satisfied: names in c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 5)) (0.3.0) Collecting pycryptodome (from -r C:\Users\trexl\Desktop\Newegg-Shuffle-main\requirements.txt (line 6)) Using cached https://files.pythonhosted.org/packages/88/7f/740b99ffb8173ba9d20eb890cc05187677df90219649645aca7e44eb8ff4/pycryptodome-3.10.1.tar.gz ERROR: Command errored out with exit status 1: command: 'c:\users\trexl\appdata\local\programs\python\python38\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\setup.py'"'"'; file='"'"'C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info cwd: C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome
    Complete output (31 lines): Traceback (most recent call last): File "c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages\setuptools\msvc.py", line 489, in _find_latest_available_vc_ver return self.find_available_vc_vers()[-1] IndexError: list index out of range

    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\setup.py", line 468, in <module>
        set_compiler_options(package_root, ext_modules)
      File "C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\compiler_opt.py", line 341, in set_compiler_options
        clang = compiler_is_clang()
      File "C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\compiler_opt.py", line 251, in compiler_is_clang
        return test_compilation(source, msg="clang")
      File "C:\Users\trexl\AppData\Local\Temp\pip-install-feon29dp\pycryptodome\compiler_opt.py", line 82, in test_compilation
        objects = compiler.compile([fname], extra_postargs=extra_cc_options)
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\distutils\_msvccompiler.py", line 360, in compile
        self.initialize()
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\distutils\_msvccompiler.py", line 253, in initialize
        vc_env = _get_vc_env(plat_spec)
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages\setuptools\msvc.py", line 185, in msvc14_get_vc_env
        return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages\setuptools\msvc.py", line 843, in __init__
        self.si = SystemInfo(self.ri, vc_ver)
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages\setuptools\msvc.py", line 485, in __init__
        self.vc_ver = vc_ver or self._find_latest_available_vc_ver()
      File "c:\users\trexl\appdata\local\programs\python\python38\lib\site-packages\setuptools\msvc.py", line 492, in _find_latest_available_vc_ver
        raise distutils.errors.DistutilsPlatformError(err)
    distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
    Testing support for clang
    ----------------------------------------
    

    ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.`

    opened by xBlackPoison357x 1
  • Creating Account - 400 error on captcha response.

    Creating Account - 400 error on captcha response.

    Trying to create an account. Getting the following: Error on line 166 JSONDecodeError Expecting value: line 1 column 1 (char 0)

    Printed the response and I'm getting a 400 error. Did they change the payload requirements or user error?

    I've tried different proxies, different emails, capmonster and 2cap (I don't have anticap but I guess I can get it if that's the problem).

    Thank you.

    Update, anticap gave the same error, also tried desktop and got same error but line 156

    bug 
    opened by atd93 3
Releases(1.1.3)
  • 1.1.3(Nov 11, 2021)

  • 1.1.2(Jun 7, 2021)

  • 1.1.1(May 5, 2021)

  • 1.1.0(May 1, 2021)

    In this update:

    1. Renamed create account module from mobile.py to app.py
    2. Added module to enter via desktop
    3. Added module to enter via app
    4. Fixed file not found errors on certain OS.
    5. Added section for user agents in settings file
    6. Added some exception handling
    7. Fixed UnboundLocalError when changing captcha version from V3 -> V2
    8. Updated TODO list
    9. Updated documentation (README)
    Source code(tar.gz)
    Source code(zip)
  • 1.0.0(Apr 24, 2021)

Owner
Matthew
Python | Go | C++
Matthew
Chorok - High quality Discord music bot

Chorok - High quality Discord music bot Rewrite with dico Config guide

Chorok Opensource project 10 May 03, 2022
Un bot leggero basato su py-cord facile da hostare sul cloud

GalbiBot Un bot leggero basato su py-cord facile da hostare sul cloud Guida installazione su una macchina Per far funzionare il bot devi aver installa

Galbaninoh 2 Oct 21, 2022
Retrieves GitHub Stats via `git_api` and flask.

GitHub User Search Created using Python3 and git_api, coded by JBYT27. About This is a project I decided to make for Kajam, but I decided to choose a

an aspirin 4 May 11, 2022
A discord bot consuming Notion API to add, retrieve data to Notion databases.

Notion-DiscordBot A discord bot consuming Notion API to add and retrieve data from Notion databases. Instructions to use the bot: Pre-Requisites: a)In

Servatom 57 Dec 29, 2022
Stop writing scripts to interact with your APIs. Call them as CLIs instead.

Zum Stop writing scripts to interact with your APIs. Call them as CLIs instead. Zum (German word roughly meaning "to the" or "to" depending on the con

Daniel Leal 84 Nov 17, 2022
LHXP・Official "LH - Cyber Security" Discord Leveling-Bot

LHXP・Official "LH - Cyber Security" Discord Leveling-Bot Based on nsde/NOVΛLIX Feature Overview /clear @user Requires admin permission Purges all XP

Felix・onlix 2 Mar 09, 2022
Data Platform com AWS CDK

Welcome to your CDK Python project! This is a blank project for Python development with CDK. The cdk.json file tells the CDK Toolkit how to execute yo

Andre Sionek 8 Jul 02, 2022
A play store search telegram bot

Play-Store-Bot A play store search telegram bot Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.c

Fayas Noushad 17 Oct 28, 2022
Tinkoff social pulse api wrapper

Tinkoff social pulse api wrapper

Semenov Artur 9 Dec 20, 2022
Anti-league-discordbot - Harrasses imbeciles for playing league of legends

anti-league-discordbot harrasses imbeciles for playing league of legends Running

Chris Clem 2 Feb 12, 2022
An powerfull telegram group management anime themed bot.

ErzaScarlet Erza Scarlet is the female deuteragonist of the anime/manga series Fairy Tail. She is an S-class Mage from the Guild Fairy Tail. Like most

ꜱōʜᴇʀᴜ ᴋāɴ (AKA) ꜱᴏʜᴀɪʟ ᴋʜᴀɴ 2 May 19, 2022
Script que realiza a identificação de todos os logins e senhas dos wifis conectados em uma máquina e envia os dados para um e-mail especificado.

getWIFIConnection Script que realiza a identificação de todos os logins e senhas dos wifis conectados em uma máquina e envia os dados para um e-mail e

Vinícius Azevedo 3 Nov 27, 2022
Skyscanner Python SDK

Skyscanner Python SDK Important As of May 1st, 2020, the project is deprecated and no longer maintained. The latest update in v1.1.5 includes changing

Skyscanner 118 Sep 23, 2022
Simple Telegram Bot for generating BalckPearl BBCode Templates

blackpearl-bbcode-bot Simple Telegram Bot for generating BlackPearl BBCode Templates Written in Pyrogram Features - 🎉 IMDB Info fetching from files -

D. Luffy 5 Oct 19, 2022
A bot to display per user data from the Twitch Leak

twitch-leak-bot-discord A bot to display per user data from the Twitch Leak by username Where's the data? I can't and don't want to supply the .csv's

SSSEAL-C 0 Nov 08, 2022
Python functions to run WASS stereo wave processing executables, and load and post process WASS output files.

wass-pyfuns Python functions to run the WASS stereo wave processing executables, and load and post process the WASS output files. General WASS (Waves

Mika Malila 3 May 13, 2022
A Telegram bot for Minecraft names

MCTelegramBot About this project This bot allows you to see data about minecraft names in Telegram, it has a few commands such as: /names - Show dropp

Kami 5 May 14, 2022
A Python Tumblr API v2 Client

PyTumblr Installation Install via pip: $ pip install pytumblr Install from source: $ git clone https://github.com/tumblr/pytumblr.git $ cd pytumblr $

Tumblr 677 Dec 21, 2022
Start multiple bots using one script. VK RAID BOTNET

MultiRaidBotnet Start multiple bots using one script. VK RAID BOTNET Русский launcher.py - главный скрипт, запускающий весь ботнет config.py - в нём х

2 Jul 22, 2022
A tiktok autoclaimer/sniper used to get og/rare usernames on tiktok.com

TikTok Autoclaimer A tiktok autoclaimer/sniper used to get og/rare usernames on tiktok.com Report Bug · Request Feature Features Asynchronous User fri

dropout 24 Dec 08, 2022