解决新浪微博API调用限制 突破rate_limit_status瓶颈
新浪微博开放平台API的调用和TWITTER接口一样,都是受限的,以小时为单位进行限定。
他有两个限制原则
1.用户不登录基于IP的限制,每小时1000次
2.用户登录了基于用户的限制,每小时1000次
如果应用是用户不登录的那么就是对IP进行限制,建议登录登录了才有办法突破瓶颈,否则免谈
新浪给出了具体的限定规则
http://open.t.sina.com.cn/wiki/index.php/Rate-limiting?retcode=0
开发者可以使用rate_limit_status接口查看调用频率
rate_limit_status接口文档
http://open.t.sina.com.cn/wiki/index.php/Account/rate_limit_status
接口返回如下信息
Array ( [remaining_hits] => 999 [hourly_limit] => 1000 [reset_time_in_seconds] => 2717 [reset_time] => Tue Dec 14 17:00:00 +0800 2010 )
分别代表
剩余数量 999 次,
每小时限制 1000 次,
计数器重置剩余时间 2717 秒,
下次重置时间 17点。
这样的调用频率对非授权类的小型应用来说就已经不够用了,最简单的办法就是采用多帐号,多APP_KEY的办法,等于是做一个帐号轮询
首先多注册几个微博帐号,存入数组,每次随机调用一个,这样很容易就使得限制达到3000,
$wb_id = array('weiboid1@gmail.com|password', 'weiboid3@gmail.com|password', 'weiboid3@gmail.com|password');
list($wb_name, $wb_password) = explode("|", $wb_id[array_rand($wb_id)]);
用同样的办法再罗列几个APP_KEY的话重复组合,那么就更多了,比如用2个APP_KEY,3个帐号,限制就可以达到6000。
我本人用了3个APP_KEY,4个帐号,每小时1.2万的量,足够了。
另外说一个快速注册微博帐号的办法
第一步,
去gmail注册一个长帐号,多长呢?反正越长越好,一个原则字母长度超过你想要注册的微博账户数量
比如 asfwefsagasgfasddasfasdg@gmail.com
第二步,
用这个帐号去新浪注册
第一次用 asfwefsagasgfasddasfasdg@gmail.com
第二次用 a.sfwefsagasgfasddasfasdg@gmail.com
第三次用 as.fwefsagasgfasddasfasdg@gmail.com
....
以此类推,这样只要一个邮箱可以注册多个新浪微博ID。不需要来回重复注册邮箱。
下面是官方对访问频率的限制:
解决新浪微博API调用限制 突破rate_limit_status瓶颈的更多相关文章
- 以短链服务为例,探讨免AppKey、免认证、Ajax跨域调用新浪微博API
新浪微博的API官方提供了很多种调用方式,支持编程的,归根结底就是两种: 1.基于Oauth协议,使用Open API.(http://open.weibo.com/wiki/%E6%8E%88%E6 ...
- 新浪微博API使用初步介绍——解决回调地址的问题
# -*- coding: utf-8 -*- #python 27 #xiaodeng #新浪微博API使用初步介绍——解决回调地址的问题 #http://blog.csdn.net/monsion ...
- 【重要】新浪微博api研究
# -*- coding: utf-8 -*- #python 27 #xiaodeng #新浪微博api研究 ''' 3.SDK的使用规则: 1)使用微博API,需要通过用户的授权,获取用户的授权码 ...
- python编程之API入门: (二)python3中使用新浪微博API
回顾API使用的流程 通过百度地图API的使用,我理解API调用的一般流程为:生成API规定格式的url->通过urllib读取url中数据->对json格式的数据进行解析.下一步,开始研 ...
- 想突破学习瓶颈,为什么要认真的学一下Dubbo?
今天有学生在问,在学习dubbo的时候遇到瓶颈了怎么办,一些东西就感觉就在那里,但是,就是碰不到,摸不着,陷入了迷茫,今天在这里,就跟大家讲一下怎么突破这个瓶颈 先自我介绍一下哈,我是鲁班学院的周瑜老 ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...
- xmlrpc实现bugzilla api调用(无会话保持功能,单一接口请求)
xmlrpc实现bugzilla4 xmlrpc api调用(无会话保持功能,单一接口请求),如需会话保持,请参考我的另外一篇随笔(bugzilla4的xmlrpc接口api调用实现分享: xml ...
- PHP程序员如何突破成长瓶颈
PHP因为简单而使用,但不能因为它的简单而限制我们成长!文章给PHP工程师突破成长瓶颈提了一些建议,希望PHPer能够突破自己,有更好的发展. AD: 作为Web开发中应用最广泛的语言之一,PHP有着 ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
转自:https://www.cnblogs.com/keepfool/p/5665953.html 概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST AP ...
随机推荐
- aspxpivotgrid排序
protected virtual void SetSortBySummary() { foreach (PivotGridField field in grid.Fields) { if (fiel ...
- JS页面之间传值
父页面与子页面之间有多种传值的方式: 第一种,通过window.open的方法打开一个新的页面,在新的页面里面通过window.opener来获取对象,以下为实例 父页面: function open ...
- linux下查看机器配置
查看cpu信息:lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): ...
- LockSupport学习
LockSupport工具类定义了一组的公共静态方法,这些方法提供了最基本的线程阻塞和唤醒功能.Java锁和同步器框架的核心工具类AQS:AbstractQueueSynchronizer,就是通过调 ...
- php 公历农历互相转换
废话不多,直接上代码 <?php class Lunar { /** * Created by 闻海南. * User: timeless * Date: 2018-5-29 * Time: 上 ...
- poj2104 划分树 区间K大 在线 无修改
博主sbit....对于高级数据结构深感无力,然后这些东西在OI竟然烂大街了,不搞就整个人都不好了呢. 于是我勇猛的跳进了这个大坑 ——sbit 区间K大的裸题,在线,无修改. 可以用归并树(\(O( ...
- nutch 抓取需要登录的网页
题记:一步一坑,且行且珍惜 最近接到任务,要利用nutch去抓取公司内部系统的文章,可是需要登录才能抓到.对于一个做.net,不熟悉java,不知道hadoop,很少接触linux的我,这个过程真是艰 ...
- electron 编译 sqlite3避坑指南---尾部链接有已经编译成功的sqlite3
electron 编译 sqlite3避坑指南(尾部链接有已经编译成功的sqlite3) sqlite很好用,不需要安装,使用electron开发桌面程序,sqlite自然是存储数据的不二之选,奈何编 ...
- 网站页面SEO的三个标签怎么写有利【转载】
转载自:代明博客 在SEO界,自从夫唯老师提出“四处一词”的概念以来,不管是搜索引擎还是SEOer,都格外重视页面的三个标签.三个标签书写是否成功,在很大程度上决定了网页是否能有好的排名.今天代明博客 ...
- BootstrapTable与KnockoutJS相结合实现增删改查功能
http://www.jb51.net/article/83910.htm KnockoutJS是一个JavaScript实现的MVVM框架.通过本文给大家介绍BootstrapTable与Knock ...