您的位置:首页 > 其它

py爬虫-新浪微博爬虫(1)

2015-11-09 10:35 507 查看
作为小白,在走了大量弯路之后,终于走上正途,深知入门之不易。因此,写这篇博客,希望能对你有帮助。话不多说,进入正题!!

首先,我们先要弄清几个问题:

1、什么平台的数据最好爬

     手机<移动平台<PC     通过网页源码你会发现,他们的html的复杂度是一次递增的

2、推荐几款工具

    谷歌或者火狐浏览器,功能强大,使用方便。fiddler:一种抓包工具,分为fiddler4和fiddler2,根据你的.net版本安装,谁用谁知道

3、如何抓取微博数据

  在这里,通网上众多例子一样,我用的是高级搜索功能,虽然说表面避开了登陆环节,实际上还是要登录的。因为只有session保持的时候才能请求网页。

然后构造url,通过request获取网页。

——————————————————————————————————————————————————————————————、

这里我们以抓取微博手机网页版为例,首先我们来分析一下他的高级搜索url结构
http://weibo.cn/search/mblog?hideSearchFrame=&keyword=古力娜扎&advancedfilter=1&starttime=20111108&endtime=20151109&sort=time&page=2 http://weibo.cn/search/mblog?hideSearchFrame=&     url的字头

keyword=古力娜扎   关键字

advancedfilter=1   高级搜素标志

starttime=20111108起始时间

endtime=20151109终止时间     pc的链接是精确到小时的手机的链接精确到日

sort=time     分类方法:时间或者热门程度

page=2      显而易见就是页码,手机的搜索结果无论多少都只能显示100页

这时候我们就可以通过构造url获取网页了,

那么######通过request.get(url)可以获取到数据吗    ???????

你会发现你获得的网页会一直停留在登陆页面。。囧  。。。在这个地方当时我疑惑了很久,后来经过多方查证是因为session断l

怎么破??怎么破???

加个cookies就能解决问题了,这时候就变成requests.get(url,cookies),这里的cookies是你登陆微博后的cookies,获取方法 你自己研究,我就不说了

这时候我们就可以改变page获取到你想要的网页,当然这对一个爬虫来说上远远不够的  嘿嘿 欲知详情,请关注下期
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  新浪微博 爬虫 数据