搜索引擎--范例:新浪微博API获取最近的微博--statuses/public_timeline

新浪微博平台跟新浪SAE一样,都是一个字“坑”,好了,不再吐槽,直入主题

1:直接登录新浪,添加网站,就直接添加我们在新浪SAE上创建的应用即可

2:填写信息,ICP备案信息号填写sinaapp.com的备案号就行了,图标的话用photoshop应该问题不大

3:获取key和serect,我们这种小打小闹的网页一般很难通过审核的,但是没关系,只要我们能获得测试账号就行了

只要审核了,不管通不通过,就可以用测试账号的key和serect了,所以,尽管提交审核就好了

4:代码如下,是参考网上的,不过现在找不到那个博客啦,。。。。。,所以没外链。。。

import sys#在微博开放平台上的SDK中找到python SDK,下载安装就行import weibo
import webbrowser
import json #舔你的微博开放平台网站的key
APP_KEY = ‘643524640‘#对应的serect
MY_APP_SECRET = ‘32f7d34f4d826b818a05be54c161c933‘#这个可以对应SAE应用的url
REDIRECT_URL = ‘http://irsearch.sinaapp.com/‘
#要想看懂这些代码,努力的去看python SDK吧
api = weibo.APIClient(APP_KEY, MY_APP_SECRET)

authorize_url = api.get_authorize_url(REDIRECT_URL)

#print(authorize_url)

webbrowser.open_new(authorize_url)

code = raw_input()

request = api.request_access_token(code, REDIRECT_URL)

access_token = request.access_token

expires_in = request.expires_in

api.set_access_token(access_token, expires_in)
#public_timeline有三个参数

t = api.statuses__public_timeline(count=1)

5:返回的数据格式是weibo.JsonDict,并且其中的中文使用unicode编码

可以用python的json进行转化

#接上面print(t)
print(type(t))

te = json.dumps(t,ensure_ascii=False)
print(type(te))
print(te)

tem = json.loads(te)
print(type(tem))
print(tem)

结果部分如下:

{"interval": 0, "hasvisible": false, "total_number": 1, "previous_cursor": 0, "next_cursor": 0, "statuses": [{"reposts_count": 0, "truncated": false, "text": "\"激情世界杯  满减送不停\",这个活动推荐给大家。 地址:http://t.cn/RvuECDN", "visible": {"type": 0, "list_id": 0}, "in_reply_to_status_id": "", "bmiddle_pic": "http://ww1.sinaimg.cn/bmiddle/df70fb22gw1ehy9a62v03j209v0afwh9.jpg", "id": 3728023935535065, "thumbnail_pic": "http://ww1.sinaimg.cn/thumbnail/df70fb22gw1ehy9a62v03j209v0afwh9.jpg", "mid": "3728023935535065", "source": "<a href=\"http://app.weibo.com/t/feed/59hmLP\" rel=\"nofollow\">微活动</a>", "attitudes_count": 0, "in_reply_to_screen_name": "", "pic_urls": [{"thumbnail_pic": "http://ww1.sinaimg.cn/thumbnail/df70fb22gw1ehy9a62v03j209v0afwh9.jpg"}], "annotations": [{"source": {"url": "http://event.weibo.com/23382470", "title": "激情世界杯  满减...", "id": "23382470", "name": "激情世界杯  满减送不停", "appid": "38"}}], "in_reply_to_user_id": "", "darwin_tags": [], "favorited": false, "original_pic": "http://ww1.sinaimg.cn/large/df70fb22gw1ehy9a62v03j209v0afwh9.jpg", "idstr": "3728023935535065", "user": {"bi_followers_count": 9, "domain": "", "avatar_large": "http://tp2.sinaimg.cn/1801120077/180/5683836874/1", "verified_source": "", "ptype": 0, "statuses_count": 312, "allow_all_comment": true, "id": 1801120077, "verified_reason_url": "", "city": "1", "province": "44", "block_app": 0, "follow_me": false, "verified_reason": "", "followers_count": 186, "location": "广东 广州", "verified_trade": "", "mbtype": 0, "verified_source_url": "", "profile_url": "u/1801120077", "block_word": 0, "avatar_hd": "http://ww1.sinaimg.cn/crop.0.0.200.200.1024/6b5ae94djw1ec877cl1trj205k05kmx9.jpg", "star": 0, "description": "", "friends_count": 371, "online_status": 1, "mbrank": 0, "allow_all_act_msg": true, "profile_image_url": "http://tp2.sinaimg.cn/1801120077/50/5683836874/1", "idstr": "1801120077", "verified": false, "geo_enabled": true, "class": 1, "screen_name": "车赣刺", "lang": "zh-cn", "weihao": "", "remark": "", "favourites_count": 0, "name": "车赣刺", "url": "", "gender": "m", "created_at": "Mon Aug 23 18:32:22 +0800 2010", "worldcup_guess": 0, "verified_type": -1, "following": false}, "geo": null, "created_at": "Wed Jul 02 23:07:12 +0800 2014", "mlevel": 0, "comments_count": 0}]}

6:这是一个字典,大家想怎么用就怎么用吧

搜索引擎--范例:新浪微博API获取最近的微博--statuses/public_timeline

时间: 2024-08-09 16:01:39

搜索引擎--范例:新浪微博API获取最近的微博--statuses/public_timeline的相关文章

通过新浪微博API获取数据

要获取新浪微博的数据,可以通过他们提供的API,地址:http://open.weibo.com/wiki/API文档_V2. 获取数据的方法如下: <?php function getWeiboData() { $count = 15; // 参数source后面输入你的授权号 $url = "https://api.weibo.com/2/statuses/home_timeline.json?source=123456789&count=".$count."

搜索引擎--范例:django之初试牛刀

这学期学了一门课<信息检索>,也就是传说中的搜索引擎 大作业自然而然的让我们自己做一个小型的搜索引擎.于是乎,我们本次的主题就诞生了 我也是边学边用,下面和大家一起分享我在这个过程中学到的东西,说的不对的请大家指正 这是我的成果搜索引擎--范例,大家可以点进去看看,点此下载所有文件盒源代码 按照流程,下面我给大家分享的依次是: 1:SAE创建新应用,SVN管理代码 2:新浪微博API获取最近的微博 3:中文分词算法的实现 4:谈谈django--mysql数据库的一些常用命令 搜索引擎--范例

Java调用 新浪微博API 接口发微博,逐条讲解,绝对清晰

最近要做个课程设计,使用微博控制树莓派,树莓派再控制发光二极管的亮和灭,主要设计分两层,上层是用Java调用新浪微博API来实现对微博旳监听,当我的微博被回复时能够自动读取评论内容,并根据评论的指令内容来决定树莓派的控制动作.下层是用C语言调用操作系统底层接口来实现用树莓派GPIO接口控制发光二极管的闪烁.亮灭. 由于网上教程都很老了,最近微博接口发生了很多变化,所以我决定全新写一篇详细的博文,如若能对您起到帮助作用,那将是我莫大的荣幸.同时我非常希望能与您交流,有问题请在评论里回复我. 本文将

新浪微博SSO登录方式及OAUTH2.0认证和获取我的微博

今天弄了下新浪微博SSO登录方式及OAUTH2.0认证和获取我的微博,实现的效果如下图: //========================================================================================================================== 就这么简单的界面,简单的请求json,我居然弄了一整天,主要是新浪微博的文档写的看不懂,感觉他们的文档跟他们的sdk接不上. 遇到的一个问题是: sso pac

新浪微博API的使用Python

本文记录了用新浪微博官方Python SDK调用API进行开发的流程. 准备工作 申请成为开发者并创建一个应用: 首先要有一个新浪微博的账号,然后去新浪微博开放平台(http://open.weibo.com/)创建一个应用,具体的步骤官网文档介绍的非常详细:在开发者页面点击“登录” -> “创建应用” -> 选择应用类型(如“网页应用”)-> 填写应用信息. P.S.,应用需要设置一个回调地址(CALL_BACK),可以设定为默认的回调网址:https://api.weibo.com/

搜索引擎--范例:中英文混杂分词算法的实现--正向最大匹配算法的原理和实现

纯中文和中英文混杂的唯一区别是,分词的时候你如何辨别一个字符是英文字符还是孩子字符, 人眼很容易区分,但是对于计算机来说就没那么容易了,只要能辨别出中文字符和英文的字符,分词本身就不是一个难题 1:文本的编码问题: utf8:windows下,以utf8格式保存的文本是一个3个字节(以16进制)的BOM的,并且你不知道一个汉字是否是用3位表示,但是英文适合ascii编码一样的 ascii:英文一位,中文两位,并且中文的第一个字节的值是大于128和,不会和英文混淆,推荐 unicode:中文基本是

以短链服务为例,探讨免AppKey、免认证、Ajax跨域调用新浪微博API

新浪微博的API官方提供了很多种调用方式,支持编程的,归根结底就是两种: 1.基于Oauth协议,使用Open API.(http://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E) 2.使用Weibo JS-SDK(http://open.weibo.com/sdk/js ). 官方的方式总是显得很麻烦.我们来探讨一下,能不能通过非官方的方法,免AppKey.免认证.Ajax跨域调用新浪微博

java parse 带英文单词的日期字符串 转 date (转化新浪微博api返回的时间)

拂晓风起 专注前端技术cocos2d.js.flash.html5,联系:[email protected].如果读者要找腾讯工作机会,请不吝推荐简历. 博客园 首页 新闻 新随笔 联系 管理 订阅 随笔- 227  文章- 0  评论- 336 java parse 带英文单词的日期字符串 转 date (转化新浪微博api返回的时间) 大家一般很少格式化或者parse带有Sun Nov等英文单词的字符串. 如果格式化英文月份的字符串,记得带上Locale.US参数,否则,JRE会按照当前地区

开源项目成熟度分析工具-利用github api获取代码库的信息

1.github api github api是http形式的api,功能还是比较丰富的,博主因为项目的原因主要用到的是提取project信息这项功能,返回的数据是JSON格式. api页:https://developer.github.com/v3/ Options: (H) means HTTP/HTTPS only, (F) means FTP only --anyauth Pick "any" authentication method (H) -a, --append Ap