Я работаю над скребком, который становится все больше и больше, и я беспокоюсь о том, чтобы сделать неправильный выбор дизайна.
Я никогда не делал ничего, кроме коротких скриптов на python, и я в растерянностизная, как разработать проект с большими пропорциями.
Скребок извлекает данные с разных, но похожих тематических сайтов, поэтому необходима реализация для каждого сайта.
Нужный необработанный текст каждого сайтазатем пропускается через анализатор, который ищет требуемые значения.
После получения значений они должны быть сохранены в базе данных 3N.
В окончательном варианте скребок должен работать в облакеобслуживайте и периодически проверяйте все разные сайты на наличие новых данных.Скорость и производительность не имеют первостепенного значения, но желательны.Самое главное, что требуемые данные должны быть получены без ненужного повторного использования кода.
Я использую веб-драйвер Selenium, и объект драйвера реализован как одноэлементный, поэтому все запросы выполняются одним и тем же объектом драйвера.Текст веб-сайта является частью состояния этого объекта.
Все остальные функции в настоящее время моделируются как функции, все в одном файле.Для добавления другого сайта в проект я сначала скопировал скрипт и просто изменил поисковую часть.Как только мне пришло в голову, что это довольно глупо, я хотел попросить рекомендации по дизайну.
Вы бы предпочли реализовать материнский класс Retriever и наследовать его от каждого веб-сайта, или есть еще лучший способ пойти?
Большое спасибо за любые идеи!