Advertisement
DeaD_EyE

azdelivery-document-lists

Jul 4th, 2023
675
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.85 KB | None | 0 0
  1. # I required a pdf from azdelivery, but I could not find a search function
  2. # so I scrape all pages
  3.  
  4. from collections.abc import Generator
  5. from itertools import count
  6.  
  7. import requests
  8. from bs4 import BeautifulSoup
  9.  
  10. BASE_URL = "https://www.az-delivery.de/en/collections/kostenlose-e-books?page={page}"
  11.  
  12.  
  13. def get(page: int) -> tuple[str, list[str]]:
  14.     resp = requests.get(url := BASE_URL.format(page=page))
  15.     elements = BeautifulSoup(resp.content, "html.parser").select(
  16.         "a.product-item__title"
  17.     )
  18.     return url, [e.text for e in elements]
  19.  
  20.  
  21. def walk(start=1) -> Generator[tuple[str, list[str]], None, None]:
  22.     for page in count(1):
  23.         url, elements = get(page)
  24.         if not elements:
  25.             return
  26.         yield url, elements
  27.  
  28.  
  29. results = {}
  30. for url, elements in walk():
  31.     results[url] = elements
  32.     print(url)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement