🎯 Autonomously buy Nvidia Founders Edition GPUs as soon as they become available.
This bot helps us buy Nvidia Founders Edition GPUs as soon as they become available.
config/customer.json)
data/gpus.json)
To run the bot, we need the following things:
sudo apt install firefox python3 pipenv cd nvidia-sniper pipenv install
brew install pipenv
cd nvidia-sniper
pipenv install
python --version
Python 3.8.0or higher, skip to step 4, otherwise continue to step 2
Add Pathat the bottom of the first installation page.
pip install pipenv
C:\Users\user\Documents\nvidia-sniper, then use the following command:
cd C:\Users\user\Documents\nvidia-sniper
pipenv install
Install curses for Windows using
pipenv install windows-curses
pipenv : The term 'pipenv' is not recognized
python -m venv .venv
python -m venv --upgrade .venv
.venv/Scripts/activate
pipenvagain using
pip install pipenv
pipenv install
pipenv install windows-curses
Open the Start menu and enter PATH
, then press Enter
Click the Environment Vairables...
button
In the User variables for user
section, click the variable Path
, then click the Edit...
button
A new window called Edit environment variable
will pop up, ensure C:\Users\<username>\AppData\Local\Programs\Python\Python38\Scripts
and
C:\Users\<username>\AppData\Local\Programs\Python\Python38
exists in this list, where <username>
is your username in Windows
If these paths are not in the list, add them using the New
button
Remove all other PATHs which contain anything to do with Python, Pip, or Idle by clicking them, then clicking the Delete
button
Click OK
to close the Edit environment variable
window
Click OK
to close the Environment Variables
window
Click OK
to close the System Properties
window
This bot is equipped with the ability to resolve simple reCAPTCHA on its own without the use of a third party reCAPTCHA solver. As long as you follow the recommendation in the usage section below, it is extremely likely that the bot will succesfully complete the full auto-checkout process. With that said, there is a very small possibility that you will be presented with a more advanced reCAPTCHA requiring solving image tasks that the bot cannot handle natively. If you would like to have a backup in place for that possibility, you have that option by following the steps below.
Put the *.xpi file inside the root of the
nvidia-sniperdirectory.
Create an account using one of ReCaptcha Solver's supported APIs, ex. 2captcha. Deposit money into your account. A few :dollar: should be enough.
Start the bot as per the instructions in the Usage section. After you go through the bot's selection process, you should see the ReCaptcha Solver extension in the browser.
Copy your API key from the provider of your choice. Add this key to the extension. Also, enable the checkboxes as shown below.
To update
nvidia-sniperuse,
git pullor download a fresh
.ziparchive from GitHub.
Make sure to back up the
customer.jsonin advance as it might get replaced in the process.
To use the bot, fill out
config/customer.jsonand run the script.
cd nvidia-sniper pipenv run python -m sniper
It is highly recommended that you use Firefox as your default browser and use it to log into Google services such as YouTube or Gmail. This dramatically reduces the possibility of reCAPTCHA requiring you to pass an image challenge during the bot's operation, thus enabling a fully automatic checkout without the need for manual intervention.
In the
configfolder a
customer.jsonfile and
notifications.jsonfile are used to configure the data used to auto fill the forms and to configure the bots notifications. To get started, copy and rename the two template files and customize the fields to your liking.
notifications.json
The bot can send multiple push notifications, including a screenshot attachment along the checkout process. See https://github.com/caronc/apprise#supported-notifications for more information. Add additional entries to the
servicesdictionary in the
notifications.jsonfile for multiple providers. For each notification, a custom
messagecan be set. Additionally, the
screenshotattachment can be toggled per provider.
A couple of example URLs for different notification services: -
pover://[email protected]: Pushover -
tgram://bottoken/ChatID: Telegram -
discord://webhook_id/webhook_token: Discord
customer.json
In the
customer.jsonfile you can configure your locale and the field contents used for auto-filling the checkout forms. Some fields require specific values.
locale
The
localefield can have the following values: -
de-at: Austria -
fr-be: Belgium -
en-ca: Canada -
cs-cz: Czech Republic -
da-dk: Denmark -
fi-fi: Finland -
fr-fr: France -
de-de: Germany -
it-it: Italy -
nl-nl: Netherlands -
nb-no: Norway -
pl-pl: Poland -
es-es: Spain -
sv-se: Sweden -
en-gb: United Kingdom -
en-us: United States
speed
The
speedfield can have the following values: -
shippingOptionID2: Standard Ground -
shippingOptionID3: Next Business day Afternoon -
shippingOptionID4: Second Business Day Afternoon
backup-speed
There has been a common issue related to shipping speeds not being available when cards are available. -
true: (Default) Fallback to using the standard shipping speed when the desired speed isn't available -
false: Stop the bot from continuing with checkout
country
The
countryfield can have the following values: -
AT: Austria -
BE: Belgium -
CA: Canada -
CZ: Czech Republic -
DK: Denmark -
FI: Finland -
FR: France -
DE: Germany -
IT: Italy -
NL: Netherlands -
NO: Norway -
PL: Poland -
ES: Spain -
SE: Sweden -
GB: United Kingdom -
US: United States
state
For
en-usand
en-calocale, the
statefield can have the following values: -
AL: Alabama -
AK: Alaska -
AB: Alberta -
AS: American Samoa -
AZ: Arizona -
AR: Arkansas -
AA: Armed Forces America -
AE: Armed Forces Europe -
AP: Armed Forces Pacific -
BC: British Columbia -
CA: California -
CO: Colorado -
CT: Connecticut -
DE: Delaware -
DC: District Of Columbia -
FM: Federated States of Micronesia -
FL: Florida -
GA: Georgia -
GU: Guam -
HI: Hawaii -
ID: Idaho -
IL: Illinois -
IN: Indiana -
IA: Iowa -
KS: Kansas -
KY: Kentucky -
LA: Louisiana -
ME: Maine -
MB: Manitoba -
MH: Marshall Islands -
MD: Maryland -
MA: Massachusetts -
MI: Michigan -
MN: Minnesota -
MS: Mississippi -
MO: Missouri -
MT: Montana -
NE: Nebraska -
NV: Nevada -
NB: New Brunswick -
NH: New Hampshire -
NJ: New Jersey -
NM: New Mexico -
NY: New York -
NL: Newfoundland and Labrador -
NC: North Carolina -
ND: North Dakota -
MP: Northern Mariana Islands -
NT: Northwest Territories -
NS: Nova Scotia -
NU: Nunavut -
OH: Ohio -
OK: Oklahoma -
ON: Ontario -
OR: Oregon -
PW: Palau -
PA: Pennsylvania -
PE: Prince Edward Island -
PR: Puerto Rico -
QC: Quebec -
RI: Rhode Island -
SK: Saskatchewan -
SC: South Carolina -
SD: South Dakota -
TN: Tennessee -
TX: Texas -
UT: Utah -
VT: Vermont -
VI: Virgin Islands -
VA: Virginia -
WA: Washington -
WV: West Virginia -
WI: Wisconsin -
WY: Wyoming -
YT: Yukon