def list_zhihu_answers_by_topic(topic_id): from zhihu_answer import yield_topic_best_answers # mockup def yield_topic_best_answers(topic_id, limit=100, min_voteup=300): import json data = json.loads(open('mockup_topic_answers.json', encoding='utf-8').read()) return (elem for elem in data) ret = list(yield_topic_best_answers(topic_id)) return render_template("topics.html", title='Topics', topic_answers=ret) # real ret = [] for answer in yield_topic_best_answers(topic_id, limit=100, min_voteup=300): url = zhihu_answer_url(answer) ret.append({'url': url, 'title': answer.question.title, 'vote': answer.voteup_count, 'topic': [t.name for t in answer.question.topics], }) # return form(ret) # return jsonify(ret) return render_template("topics.html", title='Topics', topic_answers=ret)
def list_zhihu_answers_by_author(author_id): from zhihu_answer import yield_author_answers ret = [] limit = int(request.args.get('limit', 10)) min_voteup = int(request.args.get('min_voteup', 300)) for answer in yield_author_answers(author_id, limit=limit, min_voteup=min_voteup): url = zhihu_answer_url(answer) ret.append({'url': url, 'title': answer.question.title, 'voteup_count': answer.voteup_count, 'created_time': convert_time(answer.created_time), 'updated_time': convert_time(answer.updated_time), 'author_name': answer.author.name, }) return jsonify(ret)