mirror of
https://git.juggalol.com/agatha/stockbot-buyvm.git
synced 2024-12-28 16:46:40 +00:00
Send Discord notifications when stock is available
This commit is contained in:
parent
f3990bc4d2
commit
f82b47ac8b
2
.gitignore
vendored
2
.gitignore
vendored
@ -3,3 +3,5 @@ venv/
|
|||||||
|
|
||||||
__pycache__/
|
__pycache__/
|
||||||
*.py[cod]
|
*.py[cod]
|
||||||
|
|
||||||
|
config.py
|
||||||
|
30
main.py
30
main.py
@ -2,6 +2,8 @@
|
|||||||
import requests
|
import requests
|
||||||
from bs4 import BeautifulSoup
|
from bs4 import BeautifulSoup
|
||||||
|
|
||||||
|
from config import DISCORD_WEBHOOK
|
||||||
|
|
||||||
BASE_URL = 'https://my.frantech.ca/'
|
BASE_URL = 'https://my.frantech.ca/'
|
||||||
URLS = [
|
URLS = [
|
||||||
'https://my.frantech.ca/cart.php?gid=37', # Las Vegas
|
'https://my.frantech.ca/cart.php?gid=37', # Las Vegas
|
||||||
@ -11,6 +13,13 @@ URLS = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def send_notification(payload):
|
||||||
|
try:
|
||||||
|
requests.post(DISCORD_WEBHOOK, json=payload)
|
||||||
|
except requests.RequestException as e:
|
||||||
|
print(f'error sending notification: {str(e)}')
|
||||||
|
|
||||||
|
|
||||||
def get_url(url):
|
def get_url(url):
|
||||||
try:
|
try:
|
||||||
response = requests.get(url)
|
response = requests.get(url)
|
||||||
@ -34,7 +43,7 @@ def get_packages(html):
|
|||||||
package['name'] = package_name
|
package['name'] = package_name
|
||||||
|
|
||||||
package_quantity = package_element.find('div', class_='package-qty').text.strip()
|
package_quantity = package_element.find('div', class_='package-qty').text.strip()
|
||||||
package['qty'] = package_quantity
|
package['qty'] = int(package_quantity.split()[0])
|
||||||
|
|
||||||
order_button = package_element.find('a', class_='btn-primary')
|
order_button = package_element.find('a', class_='btn-primary')
|
||||||
if order_button:
|
if order_button:
|
||||||
@ -54,10 +63,21 @@ def main():
|
|||||||
|
|
||||||
packages = get_packages(html)
|
packages = get_packages(html)
|
||||||
for package in packages:
|
for package in packages:
|
||||||
print('Package Name:', package['name'])
|
if package['qty'] > 0:
|
||||||
print('Package Quantity:', package['qty'])
|
send_notification({
|
||||||
print('Order URL:', package['url'])
|
"username": "stockbot-buyvm",
|
||||||
print('---------------------------')
|
"embeds": [
|
||||||
|
{
|
||||||
|
"author": {
|
||||||
|
"name": "BuyVM",
|
||||||
|
},
|
||||||
|
"title": package['name'],
|
||||||
|
"url": package['url'],
|
||||||
|
"description": f"{package['qty']} in stock now!"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"content": "STOCK ALERT"
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
Loading…
Reference in New Issue
Block a user