栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

我摊牌了,熬夜用Python给女神冰冰做了一个相册!发现...

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

我摊牌了,熬夜用Python给女神冰冰做了一个相册!发现...

微博,作为当下主流的社交平台之一,日活跃用户高达2亿多人。人们可以在微博上发表自己的感悟,自己的照片以及日常的生活内容。微博为广大的用户提供了更加多元化的社交平台。

相比于微信,许多小姐姐们更喜欢在微博上同大家分享自己日常生活中的照片。比如菜鸟哥,就非常喜欢冰冰小姐姐。今天就带大家一起,手把手的抓取冰冰小姐姐的微博图片,并保存到本地。一起来看看吧。

00.整体的思路:

01.微博主页信息

对于微博网页的抓取,很多小伙伴都是通过网络抓包的方式,来获取图片的链接地址,从而获取图片。

通过抓包的方式来获取图片的链接,非常的麻烦,而且容易被反扒。其实我们可以通过微博的API接口来获取用户的微博的内容。例如,获取微博用户的基本数据,我们只需要知道用户的微博。

例如我们打开冰冰酱的网页版微博(https://weibo.com/u/6512991534)。其中的6512991534就是微博id。我们可以打开她的网页地址,返回的就是冰冰微博的主要信息内容:

由于数据是以Unicode的编码显示,而且杂乱无章。没关系,我们通过将数据进行下载,然后进行整理。结果如下图所示:

经过解析后的数据,可以清晰的看出,微博的主要信息包含了用户的名称,微博的头像地址,以及性别,粉丝数量等重要信息。通过程序,我们同样可以模仿浏览器来向接口请求结果,并解析数据。

上图程序中,通过self.get_data函数来获取网页的json数据,并进行解析,获取得到json_data数据。(28-29行)

接下来,就是获取json_data数据中的关键信息,包括微博的头像地址,微博主页网址等信息(31-41)。

在返回的json_data数据中,包含着一项重要的内容:“containerid”。通过containerid信息,我们才能进行后续的微博详情页面的抓取。因此,我们要提取出containerid数值,并返回containerid(42-46)。

当执行上述的函数时,得到用户微博的主要信息。结果如下:

上图函数中,展示的是self.get_data函数。函数的主要作用就是向指定的网页url请求数据。

函数中,通过设置ProxyHandler,来设置我们自己的http代理(18-20行)。

函数通过urllib库来获取数据,然后将获取得到的数据进行返回(21-22行)。


02.微博详情页抓取

上面的程序,提供的是用户的微博主要内容信息,那么接下来,就是最重要的微博详情的抓取,包括微博相册以及发布的微博内容信息。

在函数get_weibo中,首先通过self.get_user_info 函数获取得到了containerid的数值(第51行)。

接下来在while循环中,利用containerid以及用户的微博id数值以及微博的页数来构造出网页详情的链接地址(第54行)。

利用self.get_data函数来获取网页返回的json数据,并解析获取得到cards字典(56-58行)。

如果cards的长度大于0,表明该页微博中有微博动态信息,接下来就可以按照字典的操作方式,来层层获取数据,包括微博的文字内容,以及微博动态的点赞数,评论数等信息内容(60-71行)。

如果mblog中的“pics”值不为None,那么就说明,该条微博动态中包含图片信息,大家就可以提取对应的图片链接地址,并将图片下载到本地文件夹内(72-80行)。

03.保存为相册

最后,将提取到的文字信息,打印到终端当中。这里我们关注的是图片的内容,而不是其他的文本信息,因此不需要将抓取到的文本信息进行保存等特殊的处理。

运行上述函数,我们就可以又快又准的抓取冰冰小姐姐的微博相册了。我们一起来看看抓取的结果吧。

如果你也是冰冰的fans,欢迎在留言区吱一声哦,说说你的想法哦。我们月底会给经常来留言打卡的同学送书10本,记得常来指导工作哦!


 

 

 

推荐阅读:

入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径

量化: 定投基金到底能赚多少钱?  | 我用Python对去年800只基金的数据分析

干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析|   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记灯谜答题王 |用Python做个海量小姐姐素描图碟中谍这么火,我用机器学习做个迷你推荐系统电影

趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!

AI: 会做诗的机器人给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影

小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

年度爆款文案

  • 1).卧槽!Pdf转Word用Python轻松搞定!

  • 2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃

  • 3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密 

  • 4).80行代码!用Python做一个哆来A梦分身 

  • 5).你必须掌握的20个python代码,短小精悍,用处无穷

  • 6).30个Python奇淫技巧集 

  • 7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货 

  • 8).再见Python!我要学Go了!2500字深度分析

  • 9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片


 

 

 

 

 

 
 

 

 

 
点阅读原文,看Python全套!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/326245.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号