blog正式转移到了这里:

http://blog.phoeagon.cz.cc



I know

phoeagon啲01世界

2010 年 9 月 23 日  星期四   晴天


web2.0时代关注{update} 分類: 滑鼠人生

web2.0时代关注


如何在web2.0时代关注一个人呢?

这是一个技术课题。。


首先,阐释一下经常遇到的情况。

比如说,XXX同时关注?暗恋?若干个人,可是ta们各自用不同web2.0平台。

比如说一个用hi5, 一个用facebook, 还有plurk,twitter什么的。

更可怕的是国内web1.9(没有协同的我统统称为1.9)人工制造技术壁垒,相互不通。

怎么用最少的代价去关注一大群人(GG、MM)呢?


第一,只要有RSS就很好解决了。

Google提供了与RSS有关的很多应用。比如说,订阅到Google Reader到电脑到手机都可以看。

又比如说,feedburner可以把RSS烧录到facebook/twitter上。facebook和twitter支持的这类应用特别多。。。

总之,有了RSS很好解决。

开一个页面,加入地址栏右边有个橘黄色的图标,一般就有RSS了。

RSS是一种xml文档,用于……

好吧,打住。。

反正这篇不是纯科普文。。。

假如不理解不使用RSS……没什么说的。。。


第二,有时没有提供RSS或者RSS不符合需要怎么办?

比如说cnbeta只提供了摘要输出的RSS。据了解(有几个我认识的人也是)统统只有摘要RSS……为了访问量。。。

那么怎么搞?

介绍一个很好的工具。。。。Yahoo Pipes。!

有关yahoo pipes生成全文摘要的做法 http://xc84.com/how-to-use-yahoo-pipes-create-full-rss-feeds 不仔细写了。。。我也很少做。。。

大概做法就是先Fetch Feed然后For each item去Fetch page那个link然后在里面截断出全文内容,再create 一个feed。。。

应该有倒腾精神的人听这么说应该很快能搞定。。。

也能看出里面能union。所以可以把比如说5个mm的blog的RSS合并成一个feed。

当然,并不是总能一个union了事的。因为你认为是rss的东西可能是另一个标准ATOM。ATOM理论上更优秀更先进也更年轻但是可惜支持的工具不多。

比如说google 导出feed基本上都是atom的。

这样就要先fetch feed然后再create feed搞出一个RSS了。。。


第三,假如,更杯具一点yahoo pipes不支持?

也许你可以看出这才是本文的重点。

也许很多人就此会放弃了。。。

可能的原因有很多。比如说很讨厌的很多网页都是gb2312或者big5编码的yahoo pipes不支持,会输出乱码。

又比如说ISP屏蔽了yahoo的spider。。。。。

但是,不要打退堂鼓,,,,,也许被关注者故意考察你的技术呢!

geek的能力是无限的!


进行一下操作可能需要一台虚拟主机。。。

比如说,我们假设要关注香港天文台hko (www.weather.gov.hk) 但是因为是big5-HKSCS的。所以pipes不支持。。怎么办,手工转码吧。。。。

一开始,我的计划是用php转码:


<?php
$url = "http://www.hko.gov.hk/contentc.htm";
$contents = file_get_contents($url);
$getcontent = iconv("big5", "utf-8",$contents);
echo $getcontents;
?>


但是一直不成功。但是echo “hello world”是成功的。。。

其实这是由于php或者cgi之类的在线技术的时间限制决定的。。。

为了避免php程序大量占用cputime,一般执行时间是有限制的。。默认限制好像是400ms跟apache有关。。。。。可以改,。。。然后呢,,,我想搞这一行的人应该很清楚400ms是什么概念了。。。。

网络延时何止400ms呢!

而且,就算你把400ms改大,比如说10s。也有问题。。网络延时是很难说的,万一超过了10s。。。占用resources不说,,,关键问题是。。。。会返回空白页面,,,,结果很不好,,,于是我们引入缓存机制。。。。

理论上设置一个daemon进程是可能的。。。。但是毕竟搞一个可执行文件还是。。。比较难以修改更新的。。。

或者说,用windows的任务计划,,,好吧我表示,,,非要在server上用win我也没办法。。。

在linux下有很好的定时执行工具和各种命令行的网络工具正适合用。。。。

用cron弄一个任务比如每小时执行

curl http://www.hko.gov.hk/contentc.htm | iconv -f BIG5 -t UTF8 >www_root/1.txt

最后重定向决定的是输出到哪里。。。

然后每小时server会自动去更新。。一般来说shell 命令可以执行比较久。。。用来更新缓存是足够的。,。。

这样我们服务器上有一个最坏情况下是1h前的副本。。

考虑到feedburner和yahoo pipes的延时,1h并不过分。。。

curl是很强大的。curl也可以带其他一些参数,比如带cookie,带user-agent,带post数据。。比如说你要抓取fd的renren网的糟糕状态。。。但是需要登录。。。就可以在一台机子上登录好,把cookie记下来,令curl以带cookie访问。。。。。。

如果特别重要你甚至可以直接server上cron生成RSS。。。不过有一定的技术难度就不在这里讨论了。。。。

所以得到一个结论,就是企图限制自动化工具获取页面是十分愚蠢的。。。事实上spider可以不理会robot,只要页面是公开的就随时可能被抓取存档。。。。比如说如果一些blog经常被censor咗文章可以cron刷一个几分钟一个的缓存。。。。是可能的。。。当然可能要因此付出额外的cpu time'。

 






訪客留言 (返回 phoeagon 的日誌)


gucci shoes 於 2010-11-17 09:37 AM 發表:
Good news for you form the gucci outlet store,the store have all kinds new gucci shoes sale for you,and discount gucci shoes for sale,you can buy cheap gucci shoes now.
[ 回覆 ] [ 封鎖 ] [ 刪除 ]


訪客名稱:
電郵地址: (不會公開)
驗證碼:  按此更新驗證碼 (如看不清楚驗證碼請點擊圖片刷新)
俏俏話: (必需 登入 後才能使用此功能)
[ 開啟多功能編輯器 ]







人氣:66163
暱稱: phoeagon
性別: 男
MORE...  
« June 2017 »
SMTWTFS
123
45678910
11121314151617
18192021222324
252627282930
» 最新日誌
Blog Moved!
跨站jsMath实现
路由表是个好东西
Twitter Fav列表达陈100...
搞定了公式显示
» 日誌分類
全部 (175)
Code Storage (11)
Math&Phy@Chem@MM (8)
Music Anyway (5)
Programming Impossible (28)
RSS提示 (2)
StorageBox (5)
'Bout Here (12)
滑鼠人生 (42)
碎屑 (51)
未分類 (11)
» 訪客留言
Priligy Home... (Chassype)
On Sale Fede... (Chassype)
5mg Propecia... (Chassype)
Best Rx Life... (Chassype)
Priligy Uk A... (Chassype)
» 最近訪客
最近沒有訪客
» 每月文章
» 日誌訂閱
尚未訂閱任何日誌
» 我的好友
» 我的連結
Ink Mark --Jlim
StarKirby
|S||S||S|
「流年祭」
» 日誌統計
文章總數: 175
留言總數: 71
今日人氣: 37
累積人氣: 66163
» 站內搜索
RSS Feed