mirror of
https://github.com/d0zingcat/RSSHub-python.git
synced 2026-05-17 15:09:31 +00:00
add cninfo announcement
This commit is contained in:
@@ -1,52 +1,59 @@
|
||||
from flask import Blueprint, render_template, request
|
||||
|
||||
bp = Blueprint('main', __name__)
|
||||
|
||||
|
||||
@bp.route('/')
|
||||
def index():
|
||||
return render_template('main/index.html')
|
||||
|
||||
|
||||
@bp.route('/feeds')
|
||||
def feeds():
|
||||
return render_template('main/feeds.html')
|
||||
|
||||
|
||||
@bp.app_template_global()
|
||||
def filter_content(ctx):
|
||||
include_title = request.args.get('include_title')
|
||||
include_description = request.args.get('include_description')
|
||||
exclude_title = request.args.get('exclude_title')
|
||||
exclude_description = request.args.get('exclude_description')
|
||||
limit = request.args.get('limit', type=int)
|
||||
items = ctx['items'].copy()
|
||||
items = [item for item in items if include_title in item['title']] if include_title else items
|
||||
items = [item for item in items if include_description in item['description']] if include_description else items
|
||||
items = [item for item in items if exclude_title not in item['title']] if exclude_title else items
|
||||
items = [item for item in items if exclude_description not in item['description']] if exclude_description else items
|
||||
items = items[:limit] if limit else items
|
||||
ctx = ctx.copy()
|
||||
ctx['items'] = items
|
||||
return ctx
|
||||
|
||||
|
||||
#---------- feed路由从这里开始 -----------#
|
||||
@bp.route('/chuansongme/articles/<string:category>')
|
||||
@bp.route('/chuansongme/articles')
|
||||
def chuansongme_articles(category=''):
|
||||
from rsshub.spiders.chuansongme.articles import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx(category)))
|
||||
|
||||
|
||||
@bp.route('/ctolib/topics/<string:category>')
|
||||
@bp.route('/ctolib/topics')
|
||||
def ctolib_topics(category=''):
|
||||
from rsshub.spiders.ctolib.topics import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx(category)))
|
||||
|
||||
|
||||
@bp.route('/infoq/recommend')
|
||||
def infoq_recommend():
|
||||
from rsshub.spiders.infoq.recommend import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx()))
|
||||
from flask import Blueprint, render_template, request
|
||||
|
||||
bp = Blueprint('main', __name__)
|
||||
|
||||
|
||||
@bp.route('/')
|
||||
def index():
|
||||
return render_template('main/index.html')
|
||||
|
||||
|
||||
@bp.route('/feeds')
|
||||
def feeds():
|
||||
return render_template('main/feeds.html')
|
||||
|
||||
|
||||
@bp.app_template_global()
|
||||
def filter_content(ctx):
|
||||
include_title = request.args.get('include_title')
|
||||
include_description = request.args.get('include_description')
|
||||
exclude_title = request.args.get('exclude_title')
|
||||
exclude_description = request.args.get('exclude_description')
|
||||
limit = request.args.get('limit', type=int)
|
||||
items = ctx['items'].copy()
|
||||
items = [item for item in items if include_title in item['title']] if include_title else items
|
||||
items = [item for item in items if include_description in item['description']] if include_description else items
|
||||
items = [item for item in items if exclude_title not in item['title']] if exclude_title else items
|
||||
items = [item for item in items if exclude_description not in item['description']] if exclude_description else items
|
||||
items = items[:limit] if limit else items
|
||||
ctx = ctx.copy()
|
||||
ctx['items'] = items
|
||||
return ctx
|
||||
|
||||
|
||||
#---------- feed路由从这里开始 -----------#
|
||||
@bp.route('/cninfo/announcement/<string:stock_id>/<string:category>')
|
||||
@bp.route('/cninfo/announcement')
|
||||
def cninfo_announcement(stock_id='', category=''):
|
||||
from rsshub.spiders.cninfo.announcement import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx(stock_id,category)))
|
||||
|
||||
|
||||
@bp.route('/chuansongme/articles/<string:category>')
|
||||
@bp.route('/chuansongme/articles')
|
||||
def chuansongme_articles(category=''):
|
||||
from rsshub.spiders.chuansongme.articles import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx(category)))
|
||||
|
||||
|
||||
@bp.route('/ctolib/topics/<string:category>')
|
||||
@bp.route('/ctolib/topics')
|
||||
def ctolib_topics(category=''):
|
||||
from rsshub.spiders.ctolib.topics import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx(category)))
|
||||
|
||||
|
||||
@bp.route('/infoq/recommend')
|
||||
def infoq_recommend():
|
||||
from rsshub.spiders.infoq.recommend import ctx
|
||||
return render_template('main/atom.xml', **filter_content(ctx()))
|
||||
|
||||
Reference in New Issue
Block a user