Я написал простой парсер, который удаляет книги и авторов с веб-сайта и загружает их в базу данных. Но у меня есть несколько вопросов:
-Где разместить код для этого (я думаю, в models.py)?
-Как написать лучше (я использовал класс, может быть, нет не лучший способ)?
-Как вызвать эту функцию из gui, одним нажатием кнопки из / admin?
Вот оно:
class Parsing:
def __init__(self, page):
self.page = page
self.html_doc = urlopen(f'https://www.litmir.me/bs?rs=5%7C1%7C0&o=20&p={self.page}').read()
self.soup = BeautifulSoup(self.html_doc)
self.cards = self.soup.find_all('div', itemtype='http://schema.org/Book')
def get_author(self, card):
return card.find('span', itemprop='author').find_all('a')[0].get_text()
def load_authors(self):
for card in self.cards:
Author.objects.create(f'{self.get_author(card)}')