joanroig / pccomponentes-bot

[Deprecated] Bot for PcComponentes stock and outlet articles, it sends Telegram messages and can do automatic purchases. Useful for tracking graphics cards, processors, etc.
MIT License
9 stars 3 forks source link
autobuy bot chromium gpu nodejs pccomponentes puppeteer rtx telegram

⚠️ Deprecation Notice

This project is no longer actively maintained and is not working with the current PcComponentes website due to recent changes. Contributions are welcome, but there may be limited support for new issues or pull requests.


PcComponentes Bot

Receive a Telegram message when a article is back to stock at the desired price! Implemented for PcComponentes.com stock and outlet articles, useful for tracking:

⚠️ Disclaimer: Please note that this is a research project. I am by no means responsible for any usage of this tool. Use it on your behalf.

Current status

The project is not actively maintained, therefore the bot may fail from time to time due changes in the website. New issues and pull requests are welcome!

Fully working

Implementation affected due website changes

Requirements

You will need Node.js and a node global package installed in your environement. Yarn is recommended as a package manager and script runner over npm.

Node and npm

If the installation was successful, you should be able to run the following command.

$ node --version
v14.16.1

$ npm --version
7.12.0

If you need to update npm, you can make it using npm! Cool right? After running the following command, just open again the command line and be happy.

$ npm install npm -g

Yarn

You can install yarn after installing npm with the following command.

$ npm install --global yarn

If the installation was successful, you should be able to run the following command.

$ yarn --version
1.22.10

Install

$ git clone https://github.com/joanroig/pcalerts
$ cd pcalerts
$ yarn

Configure bot

Edit the config.json file with your settings. Use the files in the examples folder as a reference, and check the examples README to know about all configurations. See models.ts for a detailed explanation of every configuration.

Edit the .env file in the root folder by changing the BOT_TOKEN string to connect your Telegram account:

If you enable the purchase mode, add those strings in the .env file with your account credentials:

PCC_USER=username@mail.com
PCC_PASS=userpassword

Running the project

$ yarn start

To run it on a Raspberry (maybe chmod + x is needed), you can also execute: run_raspberry.sh

Warnings about the purchase

Cart management

If purchase mode is activated, the bot will add the article into the cart and try to order everything in it. Please keep it empty!

Payment methods

The transfer option disappears from time to time. If purchase mode is activated, you will need to have a vinculated card.

To vinculate one, follow those steps:

Known issues

Login fails, but credentials are right

Edit the puppeteer-config.json and set "debug":true. Restart the bot, and in the login attempt check if a captcha appears. Solve it manually after the bot introduces the credentials, and perform a login. Then set "debug":false again and check it the problem is solved.

An issue is not listed here?

Please check the open and closed bugs in the issue tracker for the details of your bug. If you can't find it, open a new issue.

Credits

This project uses modified code from: https://github.com/elpatronaco/pccomponentes-buy-bot