BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / soft-design / #35619同步于 2009/9/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖

通用状态更新器

coolwc
2009/9/4镜像同步9 回复
我把更新器分成了 http, XMPP, 其他 每个更新器都提供query(username, password) 和 update(username, password, status)方法 每个网站对应有自己的一个更新器 对外提供的是一个update.php页面 输入形如: action=(query|update)&xml= <?xml version="1.0" standalone="yes"?> <usu> <site> <sitename>renren.com</sitename> <username>用户名</username> <password>密码</password> <status>test12345</status> </site> <site> <sitename>kaixin001.com</sitename> <username>用户名</username> <password>密码</password> <status>test12345</status> </site> </usu> 如果action是query 返回值形如: <?xml version="1.0" standalone="yes"?> <usu> <site> <sitename>renren.com</sitename> <result>状态 或者 login failed 或者 query failed</result> </site> <site> <sitename>kaixin001.com</sitename> <result>状态</result> </site> </usu> 如果为update 返回形如 <?xml version="1.0" standalone="yes"?> <usu> <site> <sitename>renren.com</sitename> <result>update success或者login failed 或者update failed</result> </site> <site> <sitename>kaixin001.com</sitename> <result>update success或者login failed 或者update failed</result> </site> </usu> 测试网页地址是 http://portfolio.mrcongwang.com/statusupdater/test.php 关于开发: 添加一个新的http更新器很容易 比如 xiaonei的更新器 如下 <?php require_once('usu-classes.php'); class updater_xiaonei extends http_updater{ //site attributes public function updater_xiaonei(){ $this->sitename = "renren.com"; $this->update_domain = 'status.renren.com'; $this->update_method = 'POST'; $this->update_url = '/doing/update.do?'; $this->update_referer = 'http://'.$this->update_domain.$this->query_url; $this->query_domain = 'status.renren.com'; $this->query_url = '/getdoing.do'; $this->login_domain = 'login.renren.com'; $this->login_url = '/Login.do'; //patterns $this->query_success_pattern = '/<span id="currentStatus">(.+)<\/span>/'; $this->query_fail_pattern=''; $this->login_success_pattern=''; $this->login_fail_pattern='<div class="errors_div">'; $this->update_success_pattern='/\{"updateStatusId":\d+,"code":\d,"msg":".+"\}/'; $this->update_fail_pattern=''; $this->update_post='c=[STATUS]&raw=[STATUS]'; $this->query_post=''; $this->login_post='email=[USERNAME]&password=[PASSWORD]&origURL=&formName=&method=&submit=%E7%99%BB%E5%BD%95'; } } ?> kaixin001.com的更新器如下: <?php require_once('usu-classes.php'); class updater_kaixin001 extends http_updater{ public function updater_kaixin001(){ //site attributes $this->sitename = "kaixin001.com"; $this->update_domain = 'www.kaixin001.com'; $this->update_method = 'POST'; $this->update_url = '/friend/status_submit.php?'; $this->update_post='state=[STATUS]'; $this->query_domain = 'www.kaixin001.com'; $this->query_url = '/home/'; $this->query_post=''; $this->login_domain = 'www.kaixin001.com'; $this->login_url = '/login/login.php'; $this->login_post='email=[USERNAME]&password=[PASSWORD]&url=/home/'; //patterns $this->query_success_pattern = '/<a href="\/home\/status.php" class="c0" style="text-decoration:none;color:#000;">(.+)<\/a>/'; $this->query_fail_pattern=''; $this->login_success_pattern=''; $this->login_fail_pattern='/账号或密码不太对吧!/'; $this->update_success_pattern='/\{"state":".+"\}/'; $this->update_fail_pattern=''; } } ?>
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
FadeToBlack机器人#1 · 2009/9/5
小包qmd征友啊 【 在 coolwc (小包) 的大作中提到: 】 : 我把更新器分成了 http, XMPP, 其他 : 每个更新器都提供query(username, password) 和 update(username, password, status)方法 : 每个网站对应有自己的一个更新器 : ...................
Vampire机器人#2 · 2009/9/5
难怪您校内上前几天各种发“测试12345” 【 在 coolwc 的大作中提到: 】 : 我把更新器分成了 http, XMPP, 其他 : 每个更新器都提供query(username, password) 和 update(username, password, status)方法 : 每个网站对应有自己的一个更新器 : ...................
coolwc机器人#3 · 2009/9/6
被发现了。。 【 在 Vampire (吸血鬼) 的大作中提到: 】 : 难怪您校内上前几天各种发“测试12345”
FadeToBlack机器人#4 · 2009/9/7
其实小包是在向外星人发信号 断网了啊
yegle机器人#5 · 2009/9/7
校内的API,没开放状态更新的那个方法…f**k… 【 在 coolwc (小包) 的大作中提到: 】 : 我把更新器分成了 http, XMPP, 其他 : 每个更新器都提供query(username, password) 和 update(username, password, status)方法 : 每个网站对应有自己的一个更新器 : ...................
coolwc机器人#6 · 2009/9/7
只能我受累了 【 在 yegle 的大作中提到: 】 : 校内的API,没开放状态更新的那个方法…f**k…
Railgun机器人#7 · 2009/9/7
【 在 FadeToBlack 的大作中提到: 】 : 其实小包是在向外星人发信号 : 断网了啊
yegle机器人#8 · 2009/9/7
稍等一段时间吧,那个方法倒是在文档里有了,但是暂时还没开放 【 在 coolwc (小包) 的大作中提到: 】 : 只能我受累了
coolwc机器人#9 · 2009/9/7
hard hacking也无所谓 【 在 yegle 的大作中提到: 】 : 稍等一段时间吧,那个方法倒是在文档里有了,但是暂时还没开放