This bot helps us buy Nvidia Founders Edition GPUs as soon as they become available.
Note: This project is no longer being actively maintained. Nvidia stopped selling Founders Edition cards through their own store and transitioned to exclusively selling via 3rd-party retailers. To buy from those 3rd-party retailers, you can check out other projects like streetmerchant or fairgame.
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.0
or higher, skip to step 4, otherwise continue to step 2Add Path
at 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
python -m venv .venv
python -m venv --upgrade .venv
.venv/Scripts/activate
pipenv
again using
pip install pipenv
pipenv install
pipenv install windows-curses
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.
Download the ReCaptcha Solver extension using the link https://addons.mozilla.org/firefox/downloads/file/3423472/recaptcha_solver-5.7-fx.xpi. If you open this link in Firefox, it will automatically attempt to add the extension to your browser. That's not what we want. Right click the link and select "Save link as" to download the *.xpi file or try opening the link in a browser other than Firefox.
Put the *.xpi file inside the root of the nvidia-sniper
directory.
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-sniper
use, git pull
or download a fresh .zip
archive from GitHub.
Make sure to back up the customer.json
in advance as it might get replaced in the process.
To use the bot, fill out config/customer.json
and 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 config
folder a customer.json
file and notifications.json
file 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 services
dictionary in the notifications.json
file for multiple providers. For each notification, a custom message
can be set. Additionally, the screenshot
attachment can be toggled per provider.
A couple of example URLs for different notification services:
pover://user@token
: Pushovertgram://bottoken/ChatID
: Telegramdiscord://webhook_id/webhook_token
: Discordcustomer.json
In the customer.json
file you can configure your locale and the field contents used for auto-filling the checkout forms. Some fields require specific values.
locale
The locale
field can have the following values:
de-at
: Austriafr-be
: Belgiumen-ca
: Canadacs-cz
: Czech Republicda-dk
: Denmarkfi-fi
: Finlandfr-fr
: Francede-de
: Germanyit-it
: Italynl-nl
: Netherlandsnb-no
: Norwaypl-pl
: Polandes-es
: Spainsv-se
: Swedenen-gb
: United Kingdomen-us
: United Statesspeed
The speed
field can have the following values:
shippingOptionID2
: Standard GroundshippingOptionID3
: Next Business day AfternoonshippingOptionID4
: Second Business Day Afternoonbackup-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 availablefalse
: Stop the bot from continuing with checkoutcountry
The country
field can have the following values:
AT
: AustriaBE
: BelgiumCA
: CanadaCZ
: Czech RepublicDK
: DenmarkFI
: FinlandFR
: FranceDE
: GermanyIT
: ItalyNL
: NetherlandsNO
: NorwayPL
: PolandES
: SpainSE
: SwedenGB
: United KingdomUS
: United Statesstate
For en-us
and en-ca
locale, the state
field can have the following values:
AL
: AlabamaAK
: AlaskaAB
: AlbertaAS
: American SamoaAZ
: ArizonaAR
: ArkansasAA
: Armed Forces AmericaAE
: Armed Forces EuropeAP
: Armed Forces PacificBC
: British ColumbiaCA
: CaliforniaCO
: ColoradoCT
: ConnecticutDE
: DelawareDC
: District Of ColumbiaFM
: Federated States of MicronesiaFL
: FloridaGA
: GeorgiaGU
: GuamHI
: HawaiiID
: IdahoIL
: IllinoisIN
: IndianaIA
: IowaKS
: KansasKY
: KentuckyLA
: LouisianaME
: MaineMB
: ManitobaMH
: Marshall IslandsMD
: MarylandMA
: MassachusettsMI
: MichiganMN
: MinnesotaMS
: MississippiMO
: MissouriMT
: MontanaNE
: NebraskaNV
: NevadaNB
: New BrunswickNH
: New HampshireNJ
: New JerseyNM
: New MexicoNY
: New YorkNL
: Newfoundland and LabradorNC
: North CarolinaND
: North DakotaMP
: Northern Mariana IslandsNT
: Northwest TerritoriesNS
: Nova ScotiaNU
: NunavutOH
: OhioOK
: OklahomaON
: OntarioOR
: OregonPW
: PalauPA
: PennsylvaniaPE
: Prince Edward IslandPR
: Puerto RicoQC
: QuebecRI
: Rhode IslandSK
: SaskatchewanSC
: South CarolinaSD
: South DakotaTN
: TennesseeTX
: TexasUT
: UtahVT
: VermontVI
: Virgin IslandsVA
: VirginiaWA
: WashingtonWV
: West VirginiaWI
: WisconsinWY
: WyomingYT
: Yukon