Python 获取新浪微博的热门话题 (API)
Code:
#!/usr/bin/python
# -*- coding: utf-8 -*- '''
Created on 2014-06-27
@author: guaguastd
@name: sinaWeiboHotTrend.py
''' import json
from sinaWeiboLogin import sinaWeiboLogin # get weibo_api to access sina api
sinaWeiboApi = sinaWeiboLogin() # get sinaWeiboTrend
from sinaWeiboTrend import trendClass
trends = trendClass(sinaWeiboApi) # get sinaWeiboTrend by hourly, by daily, by weekly
while 1:
while True:
choice = raw_input("\ninput choice to get sinaWeiboTrend (1 means hourly, 2 means daily, 3 means weekly, 0 to quit):")
if choice.isdigit():
choice = int(choice)
if choice == 0 or choice == 1 or choice == 2 or choice == 3 :
break
else:
print 'input error, should input int number among 0,1,2,3, try again!' else:
print 'input error, should input int number, please try again!' if choice == 0:
print 'Succssfully exit!\r'
break
elif choice == 1:
print 'Hourly sinaWeiboTrend are as follow:\r'
hourly_trends = trends.hourly_new_trend()
print json.dumps(hourly_trends, indent=1)
elif choice == 2:
print 'Daily sinaWeiboTrend are as follow:\r'
daily_trends = trends.daily_new_trend()
print json.dumps(daily_trends, indent=1)
elif choice == 3:
print 'Weekly sinaWeiboTrend are as follow:\r'
weekly_trends = trends.weekly_new_trend()
print json.dumps(weekly_trends, indent=1)
else:
print 'Input error, try again!\r'
RESULT:
input choice to get sinaWeiboTrend (1 means hourly, 2 means daily, 3 means weekly, 0 to quit):1
Hourly sinaWeiboTrend are as follow:
{
"trends": {
"2014-07-06 08:16": [
{
"query": "\u6797\u5999\u53ef",
"amount": "26088",
"name": "\u6797\u5999\u53ef",
"delta": "26088"
},
{
"query": "\u8d1d\u513ffeynman",
"amount": "24442",
"name": "\u8d1d\u513ffeynman",
"delta": "24442"
},
{
"query": "\u5434\u901f\u73b2",
"amount": "22423",
"name": "\u5434\u901f\u73b2",
"delta": "22423"
},
{
"query": "\u8a00\u627f\u65ed",
"amount": "21956",
"name": "\u8a00\u627f\u65ed",
"delta": "21956"
},
{
"query": "\u5434\u5988",
"amount": "21533",
"name": "\u5434\u5988",
"delta": "21533"
},
{
"query": "\u591a\u59887788",
"amount": "21314",
"name": "\u591a\u59887788",
"delta": "21314"
},
{
"query": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"amount": "21051",
"name": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"delta": "21051"
},
{
"query": "\u5305\u5b50\u59b9",
"amount": "20939",
"name": "\u5305\u5b50\u59b9",
"delta": "20939"
},
{
"query": "\u7537\u795e\u9e7f\u6657\u91cd\u8fd4\u5feb\u672c",
"amount": "20570",
"name": "\u7537\u795e\u9e7f\u6657\u91cd\u8fd4\u5feb\u672c",
"delta": "20570"
},
{
"query": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"amount": "20033",
"name": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"delta": "20033"
}
]
},
"as_of": 1404605804
} input choice to get sinaWeiboTrend (1 means hourly, 2 means daily, 3 means weekly, 0 to quit):2
Daily sinaWeiboTrend are as follow:
{
"trends": {
"2014-07-06 08:23": [
{
"query": "\u6797\u5999\u53ef",
"amount": "26434",
"name": "\u6797\u5999\u53ef",
"delta": "26434"
},
{
"query": "\u8d1d\u513ffeynman",
"amount": "24677",
"name": "\u8d1d\u513ffeynman",
"delta": "24677"
},
{
"query": "\u5434\u901f\u73b2",
"amount": "22716",
"name": "\u5434\u901f\u73b2",
"delta": "22716"
},
{
"query": "\u8a00\u627f\u65ed",
"amount": "22315",
"name": "\u8a00\u627f\u65ed",
"delta": "22315"
},
{
"query": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"amount": "22162",
"name": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"delta": "22162"
},
{
"query": "\u5434\u5988",
"amount": "21776",
"name": "\u5434\u5988",
"delta": "21776"
},
{
"query": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"amount": "21389",
"name": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"delta": "21389"
},
{
"query": "\u5305\u5b50\u59b9",
"amount": "21232",
"name": "\u5305\u5b50\u59b9",
"delta": "21232"
},
{
"query": "\u53e4\u4e3d\u7c73\u5a1c",
"amount": "19406",
"name": "\u53e4\u4e3d\u7c73\u5a1c",
"delta": "19406"
},
{
"query": "\u91d1\u661f",
"amount": "19130",
"name": "\u91d1\u661f",
"delta": "19130"
}
]
},
"as_of": 1404606238
} input choice to get sinaWeiboTrend (1 means hourly, 2 means daily, 3 means weekly, 0 to quit):3
Weekly sinaWeiboTrend are as follow:
{
"trends": {
"2014-07-06 08:24": [
{
"query": "\u6797\u5999\u53ef",
"amount": "26434",
"name": "\u6797\u5999\u53ef",
"delta": "26434"
},
{
"query": "\u8d1d\u513ffeynman",
"amount": "24677",
"name": "\u8d1d\u513ffeynman",
"delta": "24677"
},
{
"query": "\u5434\u901f\u73b2",
"amount": "22716",
"name": "\u5434\u901f\u73b2",
"delta": "22716"
},
{
"query": "\u8a00\u627f\u65ed",
"amount": "22315",
"name": "\u8a00\u627f\u65ed",
"delta": "22315"
},
{
"query": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"amount": "22162",
"name": "\u8377\u5170 \u54e5\u65af\u8fbe\u9ece\u52a0",
"delta": "22162"
},
{
"query": "\u5434\u5988",
"amount": "21776",
"name": "\u5434\u5988",
"delta": "21776"
},
{
"query": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"amount": "21389",
"name": "\u52a0\u6cb9\u5434\u4ea6\u51e1",
"delta": "21389"
},
{
"query": "\u5305\u5b50\u59b9",
"amount": "21232",
"name": "\u5305\u5b50\u59b9",
"delta": "21232"
},
{
"query": "\u53e4\u4e3d\u7c73\u5a1c",
"amount": "19406",
"name": "\u53e4\u4e3d\u7c73\u5a1c",
"delta": "19406"
},
{
"query": "\u91d1\u661f",
"amount": "19130",
"name": "\u91d1\u661f",
"delta": "19130"
}
]
},
"as_of": 1404606244
} input choice to get sinaWeiboTrend (1 means hourly, 2 means daily, 3 means weekly, 0 to quit):
Python 获取新浪微博的热门话题 (API)的更多相关文章
- Python3获取新浪微博内容乱码问题
用python获取新浪微博最近发布内容的时候调用 public_timeline()函数的返回值是个jsonDict对象,首先需要将该对象通过json.dumps函数转换成字符串,然后对该字符串用GB ...
- 5-46 新浪微博热门话题 (30分)——unfinished HASH
5-46 新浪微博热门话题 (30分) 新浪微博可以在发言中嵌入“话题”,即将发言中的话题文字写在一对“#”之间,就可以生成话题链接,点击链接可以看到有多少人在跟自己讨论相同或者相似的话题.新浪微 ...
- Python知乎热门话题爬取
本例子是参考崔老师的Python3网络爬虫开发实战写的 看网页界面: 热门话题都在 explore-feed feed-item的div里面 源码如下: import requests from py ...
- 用python+selenium抓取微博24小时热门话题的前15个并保存到txt中
抓取微博24小时热门话题的前15个,抓取的内容请保存至txt文件中,需要抓取排行.话题和阅读数 #coding=utf-8 from selenium import webdriver import ...
- 定向爬虫 - Python模拟新浪微博登录
当我们试图从新浪微博抓取数据时,我们会发现网页上提示未登录,无法查看其他用户的信息. 模拟登录是定向爬虫制作中一个必须克服的问题,只有这样才能爬取到更多的内容. 实现微博登录的方法有很多,一般我们在模 ...
- 使用python的Flask实现一个RESTful API服务器端[翻译]
最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文将会使用python的Flask框架轻松实现一个RESTful的服务 ...
- 使用python的Flask实现一个RESTful API服务器端
使用python的Flask实现一个RESTful API服务器端 最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文 ...
- 用 Python 获取 B 站播放历史记录
用 Python 获取 B 站播放历史记录 最近 B 站出了一个年度报告,统计用户一年当中在 B 站上观看视频的总时长和总个数.过去一年我居然在 B 站上看了2600+个视频,总计251个小时,居然花 ...
- python获取公网ip,本地ip及所在国家城市等相关信息收藏
python获取公网ip的几种方式 from urllib2 import urlopen my_ip = urlopen('http://ip.42.pl/raw').read() ...
随机推荐
- mysql-scott用户的表的创建
/* 功能:创建 scott 数据库中的 dept 表 */ create table dept( deptno int unsigned auto_increment primary key COM ...
- jQuery PC端图片预览,鼠标移上去查看大图
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Python_练习_VS清理器
#导入os import os #创建列表放入后缀 d=[ '.txt','obj','tlog','lastbuildstate','idb','pdb','pch','res','ilk','sd ...
- ztree 样式修改 white-space: nowrap; 后 下划线要是跟上的话 宽度 width 要 auto 就自动更新了
width:auto; border-bottom:1px solid #ccc; height:30px; display: inline-block;white-space: nowrap;
- spark版本不支持(降版本打包)
在做项目的时候代码已经更新为hadoop 2.7 spark 2.1 scala 2.11.8版本,但是服务器版本使用的是hadoop2.6 spark1.6 以及scala2.10.6版本,,主程 ...
- Spring Cloud练习1
pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...
- ansible相关说明
2.ansible相关说明 2.1.ansible相关命令 ansible:定义并运行简单任务,主要执行ad-hoc命令 ansible-config:查看.编辑.管理ansible配置 ansibl ...
- [LUOGU] P1316 丢瓶盖
题目描述 陶陶是个贪玩的孩子,他在地上丢了A个瓶盖,为了简化问题,我们可以当作这A个瓶盖丢在一条直线上,现在他想从这些瓶盖里找出B个,使得距离最近的2个距离最大,他想知道,最大可以到多少呢? 输入输出 ...
- PHP中设置session过期的时间
如何严格限制session在30分钟后过期!1.设置客户端cookie的lifetime为30分钟:2.设置session的最大存活周期也为30分钟:3.为每个session值加入时间戳,然后在程序调 ...
- 配置jdk环境变量和配置的作用
对于JDK要配置三个环境变量,分别是JAVA_HOME.path.classpath 对于我本人电脑来说,配置如下: JAVA_HOME:C:\Program Files\Java\jdk1.8.0_ ...