@kaimak

Как реализовать работу парсера на сайте?

В общем есть задача, создать сайт, в котором будет выводиться таблица с данными, которые парсятся с другого сайта. Но парсинг всех данных из этого сайта занимает больше 20 часов (нужно ставить timesleep, чтобы сайт не блочил парсер). Поэтому нужно реализовать каким то образом, чтобы парсер работал на фоне, а в это время свежие данные показывались на моем сайте (по мере парсинга). С серьезными проектами не работал, поэтому нет понимания как правильно это всё реализовать.

Пока вариант один: Запустить две программы, в одном будет django проект с сайтом, на втором будет сидеть парсер, который будет получать данные и записывать их в бд. А сайт будет выгружать из бд и показывать их у себя. Но это придется запускать две консоли одновременно. В принципе особой проблемы, конечно, в этом нет, но вдруг есть способ это всё реализовать в одной программе.

p.s. Просьба не предлагать советы типа: "а зачем тебе это", "используй прокси" и т.д.

Есть конкретный парсер и веб приложение, если есть какой то способ их как то соединить, то буду очень рад услышать варианты. Спасибо!
  • Вопрос задан
  • 143 просмотра
Пригласить эксперта
Ответы на вопрос 2
@javedimka
Хочу сока

Запустить две программы, в одном будет django проект с сайтом, на втором будет сидеть парсер, который будет получать данные и записывать их в бд. А сайт будет выгружать из бд и показывать их у себя. Но это придется запускать две консоли одновременно.

Про systemd слышал? Ну или хотя бы про service?
Или у тебя сайт работает ровно до тех пор пока у тебя ssh сессия открыта до твоего сервера?

Нужен отдельный демон, который парсит данные и складывает в БД.
Ответ написан
Комментировать
Noizefan
@Noizefan
А какая проблема в использовании прокси? прошу прощения
тоже самое что объясните как писать код но просьба не предлагать советы использовать руки и мозги
Делай тогда динамический парсинг. У тебя просят x/product/15 и ты сразу же проси y/product.php?id=15. Один хер упрешься в лимит
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы