34 lines
1.2 KiB
Python
34 lines
1.2 KiB
Python
# bundle_checker.py
|
|
import logging
|
|
from bundle_parser import BundleParser
|
|
from models import Base, Bundle, BundleVersion, BundleSalesHistory, BundleItem
|
|
import requests
|
|
|
|
# Konfiguriere das Logging
|
|
logging.basicConfig(level=logging.DEBUG, format="%(asctime)s [%(levelname)s] %(message)s")
|
|
logger = logging.getLogger(__name__)
|
|
|
|
def main():
|
|
overview_url = "https://www.humblebundle.com/bundles"
|
|
# Hier kannst du zwischen "books", "games" und "software" wählen:
|
|
category = "books"
|
|
|
|
logger.info("Extrahiere Bundle-URLs von der Übersichtsseite ...")
|
|
overview_parser = BundleParser(overview_url, category=category)
|
|
bundle_urls = overview_parser.get_bundle_urls()
|
|
logger.info(f"Gefundene {len(bundle_urls)} Bundle-URLs für Kategorie '{category}'.")
|
|
|
|
for url in bundle_urls:
|
|
logger.info(f"Verarbeite Bundle: {url}")
|
|
parser = BundleParser(url)
|
|
try:
|
|
bundle_data = parser.get_relevant_bundle_data()
|
|
logger.info(f"Detaildaten: {bundle_data}")
|
|
items = parser.parse_items()
|
|
logger.info(f"Extrahierte Items: {items}")
|
|
except Exception as e:
|
|
logger.error(f"Fehler bei {url}: {e}")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|