Exemplo n.º 1
0
def answer_test(answer_url):
    answer = Answer(answer_url)
    # 获取该答案回答的问题
    question = answer.get_question()
    # 获取该答案的作者
    author = answer.get_author()
    # 获取该答案获得的赞同数
    upvote = answer.get_upvote()
    # 获取改该答案所属问题被浏览次数
    visit_times = answer.get_visit_times()
    # 获取所有给该答案点赞的用户信息
    voters = answer.get_voters()
    # 把答案输出为txt文件
    answer.to_txt()
    # 把答案输出为markdown文件
    answer.to_md()

    print question
    # <zhihu.Question instance at 0x7f0b25d13f80>
    # 一个Question对象
    print question.get_title()  # 输出:现实可以有多美好?
    print author
    # <zhihu.User instance at 0x7f0b25425b90>
    # 一个User对象
    print voters  # <generator object get_voters at 0x7f32fbe55730>(代表所有该答案点赞的用户的生成器)
    print author.get_user_id()  # 输出:田浩
    print upvote  # 输出:9320
    print visit_times  # 输出: 改答案所属问题被浏览次数
Exemplo n.º 2
0
def answer_test(answer_url):
    answer = Answer(answer_url)
    # 获取该答案回答的问题
    question = answer.get_question()
    # 获取该答案的作者
    author = answer.get_author()
    # 获取该答案获得的赞同数
    upvote = answer.get_upvote()
    # 获取改该答案所属问题被浏览次数
    visit_times = answer.get_visit_times()
    # 获取所有给该答案点赞的用户信息
    voters = answer.get_voters()
    # 把答案输出为txt文件
    answer.to_txt()
    # 把答案输出为markdown文件
    answer.to_md()

    print question
    # <zhihu.Question instance at 0x7f0b25d13f80>
    # 一个Question对象
    print question.get_title()  # 输出:现实可以有多美好?
    print author
    # <zhihu.User instance at 0x7f0b25425b90>
    # 一个User对象
    print voters # <generator object get_voters at 0x7f32fbe55730>(代表所有该答案点赞的用户的生成器)
    print author.get_user_id()  # 输出:田浩
    print upvote  # 输出:9320
    print visit_times  # 输出: 改答案所属问题被浏览次数
Exemplo n.º 3
0
def answer_test(answer_url):
    answer = Answer(answer_url)
    # 获取该答案回答的问题
    question = answer.get_question()
    # 获取该答案的作者
    author = answer.get_author()
    # 获取该答案获得的赞同数
    upvote = answer.get_upvote()
    # 获取改该答案所属问题被浏览次数
    visit_times = answer.get_visit_times()
    # 获取所有给该答案点赞的用户信息
    voters = answer.get_voters()
    # 获取答案长度
    answer_length = answer.get_answer_length()
    # 把答案输出为txt文件
    answer.to_txt()
    # 把答案输出为markdown文件
    answer.to_md()

    print question
    # <zhihu.Question instance at 0x7f0b25d13f80>
    # 一个Question对象
    print question.get_title()  # 输出:现实可以有多美好?
    print author
    # <zhihu.User instance at 0x7f0b25425b90>
    # 一个User对象
    for voter in voters:
        print voter
        # 一个 User 对象
    print author.get_user_id()  # 输出:田浩
    print upvote  # 输出:9320
    print visit_times  # 输出: 改答案所属问题被浏览次数
    print 'answer_length', answer_length  # 输出:
def dealWithPage(page_num):
    page = urlparse.urljoin(url_prefix, str(page_num))

    question_index_filename = 'q_index'
    try:
        question = Question(page)
    except:
        print 'Question Get Error.'
        return
    f = codecs.open(question_index_filename + '.txt', 'a')
    f.write(str(page_num) + '\r\n')
    f.close()
    question_folder = 'Zhihu/Question_' + str(page_num)
    question_filename = 'q'
    if (not os.path.exists(question_folder)):
        os.makedirs(question_folder)
    f = codecs.open(os.path.join(question_folder, question_filename + '.txt'),
                    'w')
    f.write(question.get_title() + '\r\n|||\r\n')
    f.write(question.get_detail() + '\r\n|||\r\n')
    for topic in question.get_topics():
        f.write(topic + '\t')
    f.write('\r\n|||\r\n')
    f.write(str(question.get_visit_times()) + '\r\n|||\r\n')
    f.write(str(question.get_followers_num()) + '\r\n|||\r\n')
    f.write(str(question.get_answers_num()) + '\r\n|||\r\n')
    f.close()

    answers = question.get_all_answers()
    for answer in answers:
        ansURL = answer.answer_url
        ans = Answer(ansURL)
        answer_folder = os.path.join(question_folder, 'Answer')
        answer_filename = str(ansURL.split('/')[-1])
        answer_index_filename = 'a_index'
        f = codecs.open(answer_index_filename + '.txt', 'a')
        f.write(str(page_num) + '|||' + str(answer_filename) + '\r\n')
        f.close()
        if (not os.path.exists(answer_folder)):
            os.makedirs(answer_folder)
        f = codecs.open(os.path.join(answer_folder, answer_filename + '.txt'),
                        'w')
        try:
            f.write(ans.get_content().find('body').get_text().strip().encode(
                "gbk", 'ignore') + '\r\n|||\r\n')
            f.write(ans.get_author().get_user_id() + '\r\n|||\r\n')
            f.write(str(ans.get_upvote()) + '\r\n|||\r\n')
        except:
            print 'TimeOut Occurred.'
            f.close()
            f = codecs.open(
                os.path.join(answer_folder, answer_filename + '.txt'), 'w')
            f.write('None')
            f.close()
            continue
        f.close()
Exemplo n.º 5
0
def answer_test(answer_url):

    answer = Answer(answer_url)
    # 获取该答案回答的问题
    question = answer.get_question()
    # 获取该答案的作者
    author = answer.get_author()
    # 获取该答案获得的赞同数
    upvote = answer.get_upvote()
    # 把答案输出为txt文件
    answer.to_txt()
    # 把答案输出为markdown文件
    answer.to_md()

    print question 
    # <zhihu.Question instance at 0x7f0b25d13f80>
    # 一个Question对象
    print question.get_title() # 输出:现实可以有多美好?
    print author 
    # <zhihu.User instance at 0x7f0b25425b90>
    # 一个User对象
    print author.get_user_id() # 输出:田浩
    print upvote # 输出:9320
Exemplo n.º 6
0
def answer_test(answer_url):

    answer = Answer(answer_url)
    # 获取该答案回答的问题
    question = answer.get_question()
    # 获取该答案的作者
    author = answer.get_author()
    # 获取该答案获得的赞同数
    upvote = answer.get_upvote()
    # 把答案输出为txt文件
    answer.to_txt()
    # 把答案输出为markdown文件
    answer.to_md()

    print question
    # <zhihu.Question instance at 0x7f0b25d13f80>
    # 一个Question对象
    print question.get_title()  # 输出:现实可以有多美好?
    print author
    # <zhihu.User instance at 0x7f0b25425b90>
    # 一个User对象
    print author.get_user_id()  # 输出:田浩
    print upvote  # 输出:9320
Exemplo n.º 7
0
# -*- coding: utf-8 -*-
from zhihu import Answer

answer_url = "http://www.zhihu.com/question/24269892/answer/29960616"
answer = Answer(answer_url)
# 获取该答案回答的问题
question = answer.get_question()
# 获取该答案的作者
author = answer.get_author()
# 获取该答案获得的赞同数
upvote = answer.get_upvote()
# 获取该答案所属问题被浏览次数
visit_times = answer.get_visit_times()
# 获取所有给该答案点赞的用户信息
voters = answer.get_voters()
# 把答案输出为txt文件
answer.to_txt()
# 把答案输出为markdown文件
answer.to_md()

print question
# <zhihu.Question instance at 0x7f0b25d13f80>
# 一个Question对象
print question.get_title()  # 输出:现实可以有多美好?
print author
# <zhihu.User instance at 0x7f0b25425b90>
# 一个User对象
print voters
# <generator object get_voters at 0x7f32fbe55730>
# 代表所有该答案点赞的用户的生成器
print author.get_user_id()  # 输出:田浩