昨天晚上闲着无聊翻翻人人,想来过去几年一直用的人人,里面好多喜怒哀乐。正好最近在写爬虫,干脆把它都弄下来留着吧。于是开工。
爬取的是我自己的全部已经发过的状态。
先是,向所有人一样,百度了一下,有没有现成的解决方案,确实有不少,说要先登录,然后再保留cookie,然后再用什么正则表达式,好是麻烦。
然后登录人人,分析它的网页结构,还是挺麻烦的,状态的界面都是用ajax生成的,没法直接一页一个url地获取。
直到看见一篇,说可以登录3g.renren.com,果然机智,上去看了一下, 特别简单,每一页一个url。最关键的是,它url里面直接包含你的账号和加密之后的密码,通过url就能直接访问了,不用登陆,也不用什么cookie了。
举例:
你登陆之后,点击状态,就能得到这么一个url:
http://3g.renren.com/status/getdoing.do?curpage=5&id=你的账号+blabla
其中,curpage就是当前页,这样,对于每个页,直接改curpage的号就行了。后面的内容是你的加密之后的密码等信息。
页面长成这个样子