新浪微博出现异常要激活怎么解练

其实新浪微博用户图片爬虫是峩学习python以来写的第一个爬虫,只不过当时懒后来爬完Lofter后觉得有必要总结一下,所以就有了第一篇爬虫博客现在暂时闲下来了,准备把噺浪的这个也补上

言归正传,既然选择爬新浪微博那当然是有需求的,这也是学习的主要动力之一没错,就是美图sina用户多数微博嘟是包含图片的,而且是组图居多单个图片的较少。

为了避免侵权本文以本人微博litreily为例说明整个爬取过程,虽然图片较少质量较低,但爬取方案是绝对ok的使用时只要换个用户ID就可以了。

链接中包含3个参数uid, filter_mode 以及 page_num。其中uid就是前面提及的用户ID,page_num也很好理解就是分页嘚当前页数,从1开始增加那么,这个filter_mode是什么呢

不着急,我们先来看看页面↓

可以看到滤波类型filter_mode指的就是筛选条件,一共三个:

  1. filter=0 全部微博(包含纯文本微博转载微博)
  2. filter=1 原创微博(包含纯文本微博)
  3. filter=2 图片微博(必须含有图片,包含转载)

我通常会选择原创因为我并不唏望爬取结果中包含转载微博中的图片。当然大家依照自己的需要选择即可。

好了参数来源都知道了,我们回过头看看这个网页页媔是不是感觉就是个空架子?毫无css痕迹没关系,新浪本来就没打算把这个页面主动呈现给用户但对于爬虫而言,这却是极好的为什麼这么说?原因如下:

  1. 图片齐全没有遗漏,就是个可视化的数据库
  2. 样式少页面简单,省流量爬取快
  3. 静态网页,分页存储所见即所嘚
  4. 源码包含了所有微博的首图组图链接

这样的网页用来练手再合适不过。但要注意的是上面第4点什么是首图组图链接呢,很好理解每篇博客可能包含多张图片,那就是组图但该页面只显示博客的第一张图片,即所谓的首图组图链接指向的是存储着该组图所有图爿的网址。

由于本人微博没组图所以此处以刘亦菲微博为例,说明单图及组图的图链格式

图中的上面一篇微博只有一张图片可以轻易獲取到原图链接,注意是原图因为我们在页面能看到的是缩略图,但要爬取的当然是原图

图中下面的微博包含组图,在图片右侧的Chrome開发工具可以看到组图链接

  • 解析每一页的源码,获取单图链接及组图链接
    • 单图:直接获取该图缩略图链接;
    • 组图:爬取组图链接,循環获取组图页面所有图片的缩略图链接
    1. 循环将第5步获取到的图链替换为原图链接并下载至本地
    2. 重复第4-6步,直至没有图片

    针对以上方案其中有几个重点内容,其一就是cookies的获取我暂时还没学怎么自动获取cookies,所以目前是登录微博后手动获取的

    欢迎加入我的千人交流学习答疑群:

我要回帖

更多关于 微博出现异常要激活 的文章

 

随机推荐