本篇文章给大家谈谈新浪微博 api测试工具,以及微博开发工具对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
今天给各位分享新浪微博 api测试工具的知识,其中也会对微博开发工具进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
如何通过python调用新浪微博的API
1.下载SDK
使用python调用API的话,首先要去下一个Python的SDK,sinaweibopy
连接地址在此: http://michaelliao.github.com/sinaweibopy/
可以使用pip很快的导入,github连接里的wiki也有入门的使用方法,很容易看懂。
2.理解新浪微博的授权机制
在调用API之前,首先要搞懂什么叫OAuth 2,即新浪微博的授权机制,
连接在此: http://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6%E8%AF%B4%E6%98%8E
3.在新浪微博注册应用
每个人都可以通过新浪微博开发者平台注册自己的应用,我注册的是站内应用。注册后会为每个应用分配唯一的app key 和 app secret,这在上文提到的授权机制中需要用到,相当与每个应用的标示吧。
至此,我们可以尝试写代码调用新浪微博的API啦。
4.简单的调用API实例
参考了往上很多资料和文档,写了一个简单的调用过程。
# _*_ coding: utf-8 _*_
from weibo import APIClient
import webbrowser
APP_KEY = ''
APP_SECRET = ''
CALLBACK_URL = ''
#这个是设置回调地址,必须与那个”高级信息“里的一致
client = APIClient(app_key=APP_KEY, app_secret=APP_SECRET, redirect_uri=CALLBACK_URL)
url = client.get_authorize_url()
# TODO: redirect to url
#print url
webbrowser.open_new(url)
# 获取URL参数code:
code = '2fc0b2f5d2985db832fa01fee6bd9316'
client = APIClient(app_key=APP_KEY, app_secret=APP_SECRET, redirect_uri=CALLBACK_URL)
r = client.request_access_token(code)
access_token = r.access_token # 新浪返回的token,类似abc123xyz456
expires_in = r.expires_in # token过期的UNIX时间:http://zh.wikipedia.org/wiki/UNIX%E6%97%B6%E9%97%B4
# TODO: 在此可保存access token
client.set_access_token(access_token, expires_in)
print client.friendships.friends.bilateral.ids.get(uid = 12345678)
通过以上的代码,我实现了调用相互关注API的调用,即查找与某个id的用户相互关注的人的列表。
其中,APP_KEY和APP_SECRET就是前文中分配给每个应用的信息,回调地址在每个应用的高级信息中可以看到,需要自己设置,不过随便设置一下就好
比较恶心的是code的获取,我一开始看sinaweibopy的文档的时候也没弄懂是什么意思,如上面的代码所示,url得到的是一个授权的网址,我们通过
webbrowser.open_new(url)
这行代码打开浏览器跳转到授权的界面,然后观察所在界面的网址,会显示大概如下一样的格式:
http://apps.weibo.com/sayarywei?code=505e3efcdad1f421d147db7276aabdbe
看到了吗? 问号后面有一个code=……的一个东西,把等号后面的字符串拷贝下来赋给code就可以了,但是每次运行程序是code不是一成不变的,也就是说每次都要有这么一个手动获取的过程,我觉得很麻烦,以后自己再研究一下,实现自动获取code就好了。如果能有哪位大神告诉我,感激不尽~
好了,得到正确的code之后就可以完成授权认证,也就可以调用微博的API啦,至于如何在Python下调用,我拷贝一下sinaweibopy上的介绍:
首先查看新浪微博API文档,例如:
API:statuses/user_timeline
请求格式:GET
请求参数:
source:string,采用OAuth授权方式不需要此参数,其他授权方式为必填参数,数值为应用的AppKey?。
access_token:string,采用OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获得。
uid:int64,需要查询的用户ID。
screen_name:string,需要查询的用户昵称。
(其它可选参数略)
调用方法:将API的“/”变为“.”,根据请求格式是GET或POST,调用get ()或post()并传入关键字参数,但不包括source和access_token参数:
r = client.statuses.user_timeline.get(uid=123456)
for st in r.statuses:
print st.text
若为POST调用,则示例代码如下:
r = client.statuses.update.post(status=u'测试OAuth 2.0发微博')
若需要上传文件,传入file-like object参数,示例代码如下:
f = open('/Users/michael/test.png', 'rb')
r = client.statuses.upload.post(status=u'测试OAuth 2.0带图片发微博', pic=f)
f.close() # APIClient不会自动关闭文件,需要手动关闭
请注意:上传的文件必须是file-like object,不能是str,因为无法区分一个str是文件还是字段。可以通过StringIO把一个str包装成file-like object
希望我的回答对你有帮助,望采纳。
新浪微博api接口,能够将长链接转为短链接,怎么进行测试该接口
1:无论多长的微博,都能够转成固定长短的短链,防止某些连接太长影响用户输入其他内容。 2:所有短链在算法上无法直接解链,必须经过新浪的服务器,把链接系统控制到自己的手上。这对网络内容审察来说作用极其大,如果有人发的微博包含敏感内容
怎样获取某新浪微博用户的的粉丝id
2/friendships/followers
friendships/followers
获取用户
新浪微博 api测试工具的粉丝列表
URL
https://api.weibo.com/2/friendships/followers.json
支持格式
JSON
HTTP请求方式
GET
是否需要登录
是
关于登录授权,参见 如何登录授权
访问授权限制
访问级别
新浪微博 api测试工具:普通接口
频次限制:是
关于频次限制,参见 接口访问权限说明
请求参数
必选
类型及范围
说明
source false string 采用OAuth授权方式不需要此参数,其
新浪微博 api测试工具他授权方式为必填参数,数值为应用的AppKey。
access_token false string 采用OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获得。
uid false int64 需要查询的用户UID。
screen_name false string 需要查询的用户昵称。
count false int 单页返回的记录条数,默认为50,最大不超过200。
cursor false int 返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0。
trim_status false int 返回值中user字段中的status字段开关,0:返回完整status字段、1:status字段仅返回status_id,默认为1。
注意事项
参数uid与screen_name二者必选其一,且只能选其一;最多返回5000条数据;
接口升级后:uid与screen_name只能为当前授权用户,第三方微博类客户端不受影响;
调用样例及调试工具
API测试工具
返回结果
JSON示例
{
"users": [
{
"id": 321205008,
"idstr": "321205008",
"screen_name": "江湖社***",
"name": "江湖社***,
"province": "41",
"city": "1",
"location": "河南 郑州",
"description": "描述。。。",
"url": "http://www.weibo.com",
"profile_image_url": "http://tp2.sinaimg.cn/321205008/50/5652109562/1",
"profile_url": "523438876",
"domain": "laijianghu",
"weihao": "523438876",
"gender": "m",
"followers_count": 270,
"friends_count": 364,
"statuses_count": 23,
"favourites_count": 0,
"created_at": "Wed Jan 02 23:56:03 +0800 2013",
"following": false,
"allow_all_act_msg": true,
"geo_enabled": true,
"verified": false,
"verified_type": -1,
"remark": "",
"status_id": 3532859991713507,
"allow_all_comment": true,
"avatar_large": "http://tp2.sinaimg.cn/3212050081/180/5652109562/1",
"verified_reason": "",
"follow_me": false,
"online_status": 0,
"bi_followers_count": 204,
"lang": "zh-cn",
"star": 0,
"mbtype": 0,
"mbrank": 0,
"block_word": 0
},
...
],
"next_cursor": 1,
"previous_cursor": 0,
"total_number": 61550
}
关于错误返回值与错误代码,参见 错误代码说明
返回字段说明
返回值字段
字段类型
字段说明
id int64 用户UID
idstr string 字符串型的用户UID
screen_name string 用户昵称
name string 友好显示名称
province int 用户所在省级ID
city int 用户所在城市ID
location string 用户所在地
description string 用户个人描述
url string 用户博客地址
profile_image_url string 用户头像地址(中图),50×50像素
profile_url string 用户的微博统一URL地址
domain string 用户的个性化域名
weihao string 用户的微号
gender string 性别,m:男、f:女、n:未知
followers_count int 粉丝数
friends_count int 关注数
statuses_count int 微博数
favourites_count int 收藏数
created_at string 用户创建(注册)时间
following boolean 暂未支持
allow_all_act_msg boolean 是否允许所有人给
新浪微博 api测试工具我发私信,true:是,false:否
geo_enabled boolean 是否允许标识用户的地理位置,true:是,false:否
verified boolean 是否是微博认证用户,即加V用户,true:是,false:否
verified_type int 暂未支持
remark string 用户备注信息,只有在查询用户关系时才返回此字段
status object 用户的最近一条微博信息字段 详细
allow_all_comment boolean 是否允许所有人对我的微博进行评论,true:是,false:否
avatar_large string 用户头像地址(大图),180×180像素
avatar_hd string 用户头像地址(高清),高清头像原图
verified_reason string 认证原因
follow_me boolean 该用户是否关注当前登录用户,true:是,false:否
online_status int 用户的在线状态,0:不在线、1:在线
bi_followers_count int 用户的互粉数
lang string 用户当前的语言版本,zh-cn:简体中文,zh-tw:繁体中文,en:英语
常见的接口测试工具有哪些?
接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口。
系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的,比如说咱们用的app、网址这些它在进行数据处理的时候都是通过接口来进行调用的。
程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,要发帖就得登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。
一、常见接口:
1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有SoapUI、jmeter、loadrunner等;
2、http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。可以使用的工具有postman、RESTClient、jmeter、loadrunner等;
二、前端和后端:
在说接口测试之前,我们先来搞清楚这两个概念,前端和后端。
前端是什么呢,对于web端来说,咱们使用的网页,打开的网站,这都是前端,这些都是html、css写的;对于app端来说呢,它就是咱们用的app,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验,咱们在页面上操作的时候,这些业务逻辑、功能,比如说你购物,发微博这些功能是由后端来实现的,后端去控制你购物的时候扣你的余额,发微博发到哪个账号下面,那前端和后端是怎么交互的呢,就是通过接口。
前面说的你可能不好理解,你只需记住:前端负责貌美如花,后端负责挣钱养家。
三、什么是接口测试:
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
OK,上面是百度百科上说的,下面才是我说的
其实我觉得接口测试很简单,比一般的功能测试还简单(这话我先这样说,以后可能会删O(∩_∩)O哈!),现在找工作好多公司都要求有接口测试经验,也有好多人问我(也就两三个人)什么是接口测试,本着不懂也要装懂的态度,我会说:所谓接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符合或满足相应的功能性、安全性要求。
我为啥说接口测试比功能测试简单呢,因为功能测试是从页面输入值,然后通过点击按钮或链接等传值给后端,而且功能测试还要测UI、前端交互等功能,但接口测试没有页面,它是通过接口规范文档上的调用地址、请求参数,拼接报文,然后发送请求,检查返回结果,所以它只需测入参和出参就行了,相对来说简单了不少。
怎样用python爬新浪微博大V所有数据
先上结论,通过公开的api如果想爬到某大v的所有数据,需要满足以下两个条件:
1、在你的爬虫开始运行时,该大v的所有微博发布量没有超过回溯查询的上限,新浪是2000,twitter是3200。
2、爬虫程序必须不间断运行。
新浪微博的api基本完全照搬twitter,其中接口的参数特性与底层的NoSQL密不可分,建议先看点Nosql数据库的设计理念有助于更好的理解api设计。
一般来说,如果决定爬某个大v,第一步先试获取该用户的基本信息,中间会包含一条最新的status,记下其中的id号作为基准,命名为baseId。
接口中最重要的两个参数:
since_id:返回ID比since_id大的微博(即比since_id时间晚的微博),默认为0。
max_id:返回ID小于或等于max_id的微博,默认为0。
出于各种原因,获取statuses的接口,固定为按id降序排列(scan_index_forward=false),即最新的statuses返回在前。假设该微博第一天上线,就一个用户,发了一百条,id是1到100。而你在该用户发了第50条的时候开始运行的爬虫,即baseId=50。
假设按每次获取10条历史数据递归,先将max_id设为baseId,获取该用户id为41-50的微博,再将max_id设为41重复循环,直到返回微博数量为1或0。这步没有问题。
获取用户最新的statuses就有些蛋疼了,since_id=50,同样获取10条数据,返回的并不是id值为51-60的数据,而是100-91的数据。简单说就是你没法从since_id逐步更新到用户当前status,而是得一口气从用户当前status更新到上次爬虫运行时得到的最后一条status。假设你的爬虫一个月才运行一次,该用户在这期间发了2300条微博,根据限制你只能更新2000条,这其中最老的300条在你的系统内就会出现“断档”。
最后一条,以上只针对公开的api,stackoverflow上twitter
API可以申请权限突破数量限制和更改排序机制,微博也应该有类似机制。
linux环境 怎么开启访问新浪微博 api
这个需要挂载
新浪微博 api测试工具,把对应的分区挂载就行了
你可以进磁盘使用工具(也就是disk utility)直接点挂载
新浪微博 api测试工具,
自动默认在/media下面新建一个目录 要不用mount命令自己挂 桌面上就会出现该分区的挂载图标,挂上的分区就能进了,不过要注意,该分区的文件系统
关于新浪微博 api测试工具和微博开发工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
新浪微博 api测试工具的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于微博开发工具、新浪微博 api测试工具的信息别忘了在本站进行查找喔。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~