def index(): global last_refresh, cache now = time.time() if now - last_refresh >= cache_ttl: cache['posts'] = util.get_top_discussed_links(500, 100) last_refresh = time.time() posts = cache['posts'] return render_template('index.html', posts=posts)
import time import datetime from flask import render_template, Blueprint from models import RedditPost from reddit_discussion_flask.db import session from reddit_scraper import util listings = Blueprint('listings', __name__) cache = {'posts': util.get_top_discussed_links(500, 100)} cache_ttl = 10 * 60 last_refresh = time.time() @listings.route('/') def index(): global last_refresh, cache now = time.time() if now - last_refresh >= cache_ttl: cache['posts'] = util.get_top_discussed_links(500, 100) last_refresh = time.time() posts = cache['posts'] return render_template('index.html', posts=posts) @listings.route('/yesterday') def yesterday():
import datetime from reddit_scraper import util from reddit_discussion_flask.db import session, engine from reddit_discussion_flask.listings.models import RedditPost date = datetime.date.today() links = util.get_top_discussed_links(1000, 100) posts = [] for item in links: if date == datetime.date.fromtimestamp(item.created_utc): posts.append(item) #Saving links to database RedditPost.metadata.create_all(engine) for item in posts: #TODO: Handle deletions if item.author is None: author = 'deleted' else: author = item.author.name post = RedditPost(date, author, item.title, item.num_comments, item.over_18, item.permalink, item.url) session.add(post) session.commit()