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
BioThings API framework - Making high-performance API for biological annotation data

BioThings SDK Quick Summary BioThings SDK provides a Python-based toolkit to build high-performance data APIs (or web services) from a single data sou

BioThings 39 Jan 04, 2023
Music bot because Octave is down and I can : )

Chords On a mission to build the best Discord Music Bot View Demo ยท Report Bug ยท Request Feature Table of Contents About The Project Built With Gettin

Aman Prakash Jha 53 Jan 07, 2023
Python wrapper for Xeno-canto API 2.0. Enables downloading bird data with one command line

Python wrapper for Xeno-canto API 2.0. Enables downloading bird data with one command line. Supports multithreading

_zza 9 Dec 10, 2022
AminoAutoRegFxck/AutoReg For AminoApps.com

AminoAutoRegFxck AminoAutoRegFxck/AutoReg For AminoApps.com Termux apt update -y apt upgrade -y pkg install python git clone https://github.com/deluvs

3 Jan 18, 2022
An asyncio Python wrapper around the Discord API, forked off of Rapptz's Discord.py.

Novus A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. A full fork of Rapptz's Discord.py library, with

Voxel Fox 60 Jan 03, 2023
Implementation of the paper 'Sentence Bottleneck Autoencoders from Transformer Language Models'

Introduction This repository contains the code for the paper Sentence Bottleneck Autoencoders from Transformer Language Models by Ivan Montero, Nikola

Ivan Montero 14 Dec 28, 2022
A Wrapper for ScarletAPI

ScarletAPI A Wrapper for ScarletAPI still a work in progress Docs these are the

Amashi 0 Mar 24, 2022
Discord E-Store Bot

A delivery bot for Discord, works like Amazon where real users can pack & deliver orders in different servers!

Amit Pathak 2 Jan 28, 2022
๐Ÿ“– GitHub action schedular (cron) that posts a Hadith every hour on Twitter & Facebook.

Hadith Every Hour ๐Ÿ“– A bot that posts a Hadith every hour on Twitter & Facebook (Every 3 hours for now to avoid spamming) Follow on Twitter @HadithEve

Ananto 13 Dec 14, 2022
A Telegram bot to download youtube playlists and upload them to telegram. (may be slow becoz youtube limitations)

YTPlaylistDL ๐Ÿ“› A Telegram bot to download youtube playlists and upload them to telegram. (may be slow becoz youtube limitations) ๐ŸŽฏ Follow me and sta

Anjana Madu 43 Dec 28, 2022
Asyncio SDK for Azure Cosmos DB

Asyncio SDK for Azure Cosmos DB. This library is intended to be a very thin asyncio wrapper around the Azure Comsos DB Rest API. It is not intended to have feature parity with the Microsoft Azure SDK

Grant McDonald 4 Dec 04, 2021
Discord bot ( discord.py ), uses pandas library from python for data-management.

Discord_bot A Best and the most easy-to-use Discord bot !! Some simple basic auto moderations, Chat functions. It includes a game similar to Casino, g

Jaitej 4 Aug 30, 2022
This package allows interactions with the BuyCoins API.

The BuyCoins Python library allows interactions with the BuyCoins API from applications written in Python.

Abdulazeez Abdulazeez Adeshina 45 May 23, 2022
Discord bot for playing blindfold chess.

Albin Discord bot for playing blindfold chess written in Python. Albin takes the moves from chat and pushes them on the board without showing it. TODO

8 Oct 14, 2022
Yes, it's true :revolving_hearts: This repository has 301 stars.

Yes, it's true! Inspired by a similar repository from @RealPeha, but implemented using a webhook on AWS Lambda and API Gateway, so it's serv

511 Dec 30, 2022
A tool that ensures consistent string quotes in your Python code.

pyquotes Single quotes are superior. And if you disagree, there's an option for this as well. In any case, quotes should be consistent throughout the

Adrian 9 Sep 13, 2022
A Code that can make your Discord Account 24/7 on Voice Channels!

Voicecord Make your Discord Account Online 24/7 on Voice Channels! A Code written in Python that helps you to keep your account 24/7 on Voice Channels

Phantom 229 Jan 07, 2023
The Python client library for the Tuneup Technology App.

Tuneup Technology App Python Client Library The Python client library for the Tuneup Technology App. This library allows you to interact with the cust

Tuneup Technology 0 Jun 29, 2022
Discord Rich Presence implementation for Plex.

Perplex Perplex is a Discord Rich Presence implementation for Plex. Features Modern and beautiful Rich Presence for both movies and TV shows The Movie

Ethan 52 Dec 19, 2022
Python SCript to scrape members from a selected Telegram group.

A python script to scrape all the members in a telegram group anad save in a CSV file. REGESTRING Go to this link https://core.telegram.org/api/obtain

Gurjeet Singh 7 Dec 01, 2022