CODE:
#!/usr/bin/python
# -*- coding: utf-8 -*-
'''
Created on 2014-7-4
@author: guaguastd
@name: find_popular_retweets.py
'''
# Finding the most popular retweets
def popular_retweets(statuses):
retweets = [
# Store out a tuple of these three values...
(status['retweet_count'],
status['retweeted_status']['user']['screen_name'],
status['text'])
# ... for each status ...
for status in statuses
# ... so long as the status meets this condition.
if status.has_key('retweeted_status')
]
return retweets
if __name__ == '__main__':
# import login, see http://blog.csdn.net/guaguastd/article/details/31706155
from login import oauth_login
# get the twitter access api
twitter_api = oauth_login()
# import search, see http://blog.csdn.net/guaguastd/article/details/35537781
from search import search
# pip install prettytable
from prettytable import PrettyTable
while 1:
query = raw_input('\nInput the query (eg. #MentionSomeoneImportantForYou, exit to quit): ')
if query == 'exit':
print 'Successfully exit!'
break
statuses = search(twitter_api, query)
retweets = popular_retweets(statuses)
# Slice off the first 10 from the sorted results and display each item in the tuple
pt = PrettyTable(field_names=['Count', 'Screen Name', 'Text'])
[pt.add_row(row) for row in sorted(retweets, reverse=True)[:10]]
pt.max_width['Text'] = 50
pt.align = 'l'
print ptInput the query (eg. #MentionSomeoneImportantForYou, exit to quit): #MentionSomeoneImportantForYou Length of statuses 32 +-------+----------------+----------------------------------------------------+ | Count | Screen Name | Text | +-------+----------------+----------------------------------------------------+ | 1 | thuggie_salma | RT @thuggie_salma: "@KillahPimpp: | | | | #MentionSomeoneImportantForYou @thuggie_salma" | | | | baeeePython 查找Twitter中最流行(转载最多)的10个Tweet,布布扣,bubuko.com
Python 查找Twitter中最流行(转载最多)的10个Tweet
原文地址:http://blog.csdn.net/guaguastd/article/details/36836587