forked from ynhacler/RedKindle
/
cronpush.py
54 lines (46 loc) · 1.11 KB
/
cronpush.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# -*- coding:utf-8 -*-
from rq2 import Queue,use_connection
from worker import conn
from pushworker import pushwork
from datetime import datetime
import pytz
use_connection(conn)
q = Queue()
#q.enqueue(pushwork2,'asd','1q2w3e')
import web
import model
from config import *
print datetime.now()
tz = pytz.timezone('GMT')
date = datetime.now(tz)
hour = date.hour
users = model.get_current_push_users(hour)
if len(users) == 0:
print '-=end=-'
else:
#推送
for user in users:
feeds = []
mfeeds = []
feeds_num = 0
ownfeeds = model.username2feeds(user.name)
if len(ownfeeds) != 0:
books = (model.get_allbooks())
for book in books:
if book.f_id in ownfeeds:
b=[]
if cmp('http',book.url[0:4].lower()) == 0:
b.append(book.title)
b.append(book.url)
if book.isfulltext == 1:
b.append(True)
else:
b.append(False)
feeds.append(b)
else:
b.append(book.url)
mfeeds.append(b)
feeds_num += 1
if user and user.kindle_email:
q.enqueue(pushwork,args=(user.kindle_email,feeds,mfeeds,user.keep_image),timeout=feeds_num*300)
print '-=end=-'