Advertisement
s4ros

insert_ksiazki.py

May 18th, 2020
1,573
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.34 KB | None | 0 0
  1. from pprint import pprint
  2. import requests
  3.  
  4. url = 'https://wolnelektury.pl/api/books/'
  5.  
  6. # --------------------------------------
  7. class Ksiazka:
  8.     def pobierz_info(self, ksiazka_url):
  9.         r = requests.get(ksiazka_url)
  10.         return r.json() if r.status_code == 200 else -1
  11.  
  12.     def __init__(self, ksiazka):
  13.         info = self.pobierz_info(ksiazka['href'])
  14.         self.autor = ksiazka['author']
  15.         self.tytul = ksiazka['title']
  16.         self.epoka = ksiazka['epoch']
  17.         self.isbn = info['isbn_pdf'].split(' ')[1] if info['isbn_pdf'] else None
  18.         self.pdf = info['pdf']
  19.         self.txt = info['txt']
  20.  
  21.     def __str__(self):
  22.         return f"{self.autor} - {self.tytul} [{self.isbn}]"
  23.  
  24. # --------------------------------------
  25.  
  26. def _pobierz_liste_ksiazek():
  27.     r = requests.get(url)
  28.     return r.json() if r.status_code == 200 else -1
  29.  
  30. # --------------------------------------
  31.  
  32. def _stworz_sql(ksiazka):
  33.     template = f"""INSERT INTO ksiazki ("autor", "tytul", "epoka", "isbn", "pdf", "txt") \
  34. VALUES ("{ksiazka.autor}", "{ksiazka.tytul}", "{ksiazka.epoka}", "{ksiazka.isbn}", "{ksiazka.pdf}", "{ksiazka.txt}");"""
  35.     return template
  36.  
  37. # --------------------------------------
  38.  
  39. ksiazki = _pobierz_liste_ksiazek()
  40.  
  41. for k in ksiazki:
  42.     ksiazka = Ksiazka(k)
  43.     if ksiazka.isbn:
  44.         print(_stworz_sql(ksiazka))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement