Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 14, 2012 21:00:21

Radzhab
Зарегистрирован: 2012-07-05
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Стоит задача через каждые 10 минут парсить данные с новостного сайта и заносить в БД. И по ходу отображать данные на страницах сайта. Что то типа cron было в пхп. А здесь*?

Офлайн

#2 Окт. 14, 2012 21:05:13

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

А воспользоваться планировщиком оси устроит?

Офлайн

#3 Окт. 14, 2012 21:06:01

Radzhab
Зарегистрирован: 2012-07-05
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Ну как бе хочу все в питоне сделать) Типа дополнительного потока что ли. Поправьте если не прав

Офлайн

#4 Окт. 14, 2012 21:35:10

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Я не спец по джанге, а ее процесс все время запущен?

Офлайн

#5 Окт. 14, 2012 21:50:40

Radzhab
Зарегистрирован: 2012-07-05
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

да

Офлайн

#6 Окт. 14, 2012 22:55:00

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Тогда можно создать отдельный тред, который будет запускать парсер и потом спать до следующей 10-минутной отметки.

Офлайн

#7 Окт. 14, 2012 23:19:55

Radzhab
Зарегистрирован: 2012-07-05
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Ну как это сделать))?

Офлайн

#8 Окт. 15, 2012 01:13:32

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

Как-то так.

from threading import Thread
import time
def start_parser():
    interval = 10 * 60
    while 1:
        start_time = time.time()
        # здесь парсим
        time.sleep(max(0, start_time + interval - time.time()))
new Thread(target=start_parser)

Отредактировано odnochlen (Окт. 15, 2012 13:30:23)

Офлайн

#9 Окт. 15, 2012 11:59:55

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

django-cron тут тоже есть, но лучше celery глянь

Офлайн

#10 Окт. 17, 2012 02:59:09

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Теневое выполнение процесса

odnochlen
Я не спец по джанге, а ее процесс все время запущен?
Radzhab
да
С чего бы это? Разъясните как у вас там устроенно



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version