Example #1
0
def get_feed_meta(url):

    """I'm not entirely sure this function ever actually runs."""

    logger.info('running get_feed_meta function')

    try:
        res = feedparser.parse(url, configs.get('User-Agent'))

    except Exception, e:
        logger.exception('error!')
        return False
Example #2
0
def feed_request(f, get_meta=False):

    url = f['url']
    feed_id = f['feed_id']

    def time_parser(time_str, update_time=False):
        """
        This function parses the time str from feedparser. Feeds may not
        always include the time for update, and published. So if it is
        in the feed the current time will be set for those values.

        If the update time is missing for the feed the function will set it
        to 1. If the current time is used it will end up wrong in the DB if
        the entry already exist in the DB.

        :param time_str The time str to be parsed.

        :param update_time Set to true if it is the update time that is parsed.

        :return UNIX timestamp
        """

        if time_str is None:
            if update_time:
                return 1
            else:
                return time.time()

        else:
            return time.mktime(time_str)

    res = None

    try:
        res = feedparser.parse(url, configs.get('User-Agent'))
    except Exception, e:
        logger.exception('error!')
Example #3
0
from flask import *
from flask import flash, redirect, url_for, request, g, jsonify
from flask.ext.login import current_user
from feedeater.config import configs as c
from feedeater.controller import user_manage_feeds
from feedeater.controller import user_manage_entries


import logging
from feedeater import setup_logger
logger = logging.getLogger(__name__)
setup_logger(logger)
logger.setLevel(logging.DEBUG)

basedir = c.get('basedir')
app = Blueprint('subscriptions', __name__, static_folder=basedir+'/display/static',
                template_folder=basedir+'/display/templates')


@app.before_request
def before_blueprint_request():
    logger.info("NEW SUBSCRIPTIONS.PY REQUEST")
    g.user = current_user


#####
# Functions for all subscriptions:
#####

@app.route('/refreshfeeds', methods=['POST', 'GET'])
def ref_feeds():
Example #4
0
#!../../../feed_env/bin/python

import os.path
from migrate.versioning import api
from feedeater.config import configs

REPO = configs.get('SQLALCHEMY_MIGRATE_REPO')
URI = configs.get('SQLALCHEMY_DATABASE_URI')

from feedeater.config import Model, engine  # TODO model reference here

Model.metadata.create_all(bind=engine)


if not os.path.exists(REPO):
    api.create(REPO, 'database repository')
    api.version_control(URI, REPO)
else:
    api.version_control(URI, REPO, api.version(REPO))
Example #5
0
#add project root to PYTHONPATH:
#apparently this ain't working..
from os.path import dirname
from sys import path
path.append(dirname(dirname(__file__)))


import os.path
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.login import LoginManager
from flask.ext.openid import OpenID
from feedeater.config import configs

basedir = configs.get('basedir')

logger.debug('basedir is '+ basedir)

flaskapp = Flask('feedeater', static_folder=basedir+'/display/static', template_folder=basedir+'/display/templates')
flaskapp.config.from_object('feedeater.config')


db = SQLAlchemy(flaskapp)
#import database.models


lm = LoginManager()
lm.init_app(flaskapp)
lm.login_view = 'login'
oid = OpenID(flaskapp, os.path.join(basedir, 'tmp'))