自制 RSS 源抓取 osu! 用户动态

由于有一些暂时解决不了的问题,所以这个暂停,想尝试这样同步的请谨慎。。。

想把 osu! 的动态同步到 twitter 但是官方没有提供 RSS 源所以一直都很纠结,推上有人在做同步,问了一下拿到这样的链接:

RT @ReitsukiSion : @AstroProfundis @Filine_niang http://hcg.im/osu24.php?id=你的osu UID ,以後你們就這樣告訴別人吧

但是这个是每次成绩都抓取出来的,如果我连着打几十遍不就有几十条推了么?肯定会被骂的。。。
在官网的用户界面上有 Recent Activity 一栏其实很合我胃口,只有进入谱面前100或者解锁成就才会出现在这个地方,所以如果只推这个地方的内容就可以避免刷屏+避免太差的成绩被触手们鄙视

于是扒开网页代码看,最后锁定了这样一个页面:
http://osu.ppy.sh/pages/include/profile-general.php?u=1588808
其中最后的那串数字就是uid啦,打开过后可以看到就是个人页面 General 一栏的纯内容版,然后现在就可以想办法生成 RSS 源了。

简单搜索过后看到了豆瓣上的这篇文章,于是去往 http://feed43.com/ 自己制作 RSS.
基本的操作在豆瓣那篇教程里面都有,我只贴一下我自己的过滤代码
因为页面上的内容是有重复的,所以我直接只抓取“显示更多”之后的内容。设置如下 Global Search Pattern:

之后再抓取出条目内容。设置如下 Item (repeatable) Search Pattern:

后面的都很简单了自己根据需要看着办就行,我是把动态内容放在标题方便给衣服脱脱脱同步。
简单说下过滤规则的语法。其实我也没看教程神马的,从豆瓣原帖和自己实验感觉到的是这样:

– 所有内容默认为纯文本匹配
– {%} 为取得变量,通过匹配前后的文本获得
– {*} 为跳过变量,通过匹配前后文本跳过某些可能变化的内容

目前知道的就这么多。

然后保存,获得源地址,然后就可以拿去随便用了,比如给衣服脱脱脱同步神马的~

另外需要注意一点,我这个过滤规则是针对高分榜成绩的,因为我的最近活动里面没有好友添加和解锁成就,不清楚对应的代码格式,所以应对这两种内容的时候有可能会出现错乱,等遇到了再调整了~

最后提供我的源供围观: http://feed43.com/2775451634715685.xml

拍拍手

何不考虑再看看:

{ 发表评论? }

F娘进行回复 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注

 

|<(=·_·=)> |·_·=)> |_·=)> |·=)
Merry