diff --git a/main.py b/main.py index 384932f..07f766d 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,26 @@ """buyvm stock checker""" +import requests from bs4 import BeautifulSoup +BASE_URL = 'https://my.frantech.ca/' +URLS = [ + 'https://my.frantech.ca/cart.php?gid=37', # Las Vegas + 'https://my.frantech.ca/cart.php?gid=38', # New York + 'https://my.frantech.ca/cart.php?gid=48', # Miami + 'https://my.frantech.ca/cart.php?gid=39', # Luxembourg +] + + +def get_url(url): + try: + response = requests.get(url) + response.raise_for_status() + except requests.RequestException as e: + print(f'error fetching {url}: {str(e)}') + return None + + return response.text + def get_packages(html): soup = BeautifulSoup(html, 'html.parser') @@ -19,7 +39,7 @@ def get_packages(html): order_button = package_element.find('a', class_='btn-primary') if order_button: order_url = order_button['href'] - package['url'] = order_url + package['url'] = BASE_URL + order_url else: package['url'] = '' @@ -29,15 +49,15 @@ def get_packages(html): def main(): - with open('tests/data/stock.html', 'r', encoding='utf-8') as file: - html = file.read() + for url in URLS: + html = get_url(url) - packages = get_packages(html) - for package in packages: - print('Package Name:', package['name']) - print('Package Quantity:', package['qty']) - print('Order URL:', package['url']) - print('---------------------------') + packages = get_packages(html) + for package in packages: + print('Package Name:', package['name']) + print('Package Quantity:', package['qty']) + print('Order URL:', package['url']) + print('---------------------------') if __name__ == '__main__': diff --git a/requirements.txt b/requirements.txt index c1f5f71..1f3e778 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,2 @@ beautifulsoup4 +requests