如何用代码控制浏览器下载知乎大v的粉丝数据?

news/2024/7/19 11:08:28 标签: 爬虫, 前端
这个是答应了群友好久的一篇教程。 在之前也有几篇文章是解答公众号订阅用户的相关问题而写的,例如:
全民刷军装背后的AI技术及简单实现​mp.weixin.qq.com
用代码生成Glitch Art风格的抖音字体​mp.weixin.qq.com
解读:如何让机器自动答题?​mp.weixin.qq.com
如何制作《超简单的AI自测题》​mp.weixin.qq.com

欢迎用户在后台 留言需解答的问题 , mixlab 将会不定期的从中选择提供解决方案。同时 mixlab 微信群已经汇集了机器学习、自然语言处理、前端、后端、产品经理、UI设计师、建筑设计师、高校教师、CEO~相关问题,也会有热心群友解答。
回到本文,群友问: 如何在浏览器简便地爬取数据,并下载成 json 格式的文件到本地电脑 。本文以 下载知乎大v的粉丝数据 为例,介绍4个知识点, 爬虫相关的 html 获取与解析,模拟鼠标点击,缓存数据至本地,自动下载文件至本地 。接下来我们一步步来:

1

选定目标页面
爬取知乎大 v 的粉丝数据,比如拿李开复老师的知乎开刀:


https://www.zhihu.com/people/kaifulee/followers

2

编写爬取函数
浏览器打开后,在 console 面板注入以下代码:



function getFollows(){ var lis=document.querySelectorAll(‘.List-item’); var res=JSON.parse(localStorage.getItem(‘followers_zhihu’))||[]; for(var i=0;i<lis.length;i++){ var li=lis[i]; var a=li.querySelector(‘.UserLink-link’); var url=a.getAttribute(‘href’); var name=a.querySelector(‘img’).alt; var qmd=li.querySelector(‘.RichText’)?li.querySelector(‘.RichText’).innerText:’’; var status=li.querySelector(‘.ContentItem-status’)?li.querySelector(‘.ContentItem-status’).innerText:’’; res.push({url,name,qmd,status}) }; console.log(res); localStorage.setItem(‘followers_zhihu’,JSON.stringify(res)); document.querySelector(‘.PaginationButton-next’).click(); };

3

开始自动获取数据
开启一个定时任务,再输入:


window._t=setInterval(getFollows,1600);

4

保存数据至本地文件
等待爬取完成后,再输入:


window.clearInterval(window._t);
停止定时任务,或者直接刷新下浏览器暴力停止下哈。然后输入:


var ssss=localStorage.getItem(‘followers_zhihu’); function export_raw(name, data) { var urlObject = window.URL || window.webkitURL || window; var export_blob = new Blob([data]); var save_link = document.createElementNS(“http://www.w3.org/1999/xhtml“, “a”); save_link.href = urlObject.createObjectURL(export_blob); save_link.download = name; save_link.click(); };

执行下:


export_raw(‘zhihufollows.json’,ssss)
这样李开复老师的粉丝数据就都获取到了,接下来想怎么分析就怎么分析吧~例如,我们可以找出粉丝中的斜杆青年:

"WEB前端工程师/Ui设计师。",
"前端开发/设计爱好者",
"Web 前端 / 像素字体设计师",
"设计师,人工智能编程",
"设计师加前端工程师",
"懂设计的前端小白",
"前端开发&ui设计尸",
"设计师 前端 代码 UI 网页 广告",
"设计师/WEB前端工程师/自媒体人",
"不会前端的设计师不是好产品经理",
"前端攻城狮,略懂一点设计,饮四季茶,写八九行代码,十全大补书中达",
"产品经理/前端开发/交互设计/游戏原画",
"不想编程的伪码农不是好设计师",
"会编程的交互设计师",
"望着设计,想着编程,做着文员",
"交互设计/产品设计/数据可视化/网络开发/前端设计",
"景观设计/平面设计爱好者/前端自学中/猫/伪乐观的悲观主义者",
"不想当设计师的产品经理不是好前端",
"业余家装设计/插画/编程/篮球/电子商务",
"懵懂编程,专注设计",
"前端控/设计控"

ps:本文仅供学习研究技术之用。

关于各种技术问题,在 mixlab 的 微信群知识星球 都有定期的探讨。本文同时在 知乎专栏 :《 人工智能+设计修炼指南 》发表。本公众号定期更新人工智能&设计&科技内容。谈点设计,敲点代码,偶尔创作点人工智能实验产品。

近期热文推荐:
自我驱动,如何构建个人的技术思维?​mp.weixin.qq.com
从鲁班的视觉引擎谈起​mp.weixin.qq.com
用代码生成Glitch Art风格的抖音字体​mp.weixin.qq.com

http://www.niftyadmin.cn/n/1250299.html

相关文章

自我驱动,如何构建个人的技术思维?

关于斜杆&#xff0c;有这么一群人&#xff1a;"设计师/WEB前端工程师/自媒体人","前端攻城狮&#xff0c;略懂一点设计&#xff0c;饮四季茶&#xff0c;写八九行代码&#xff0c;十全大补书中达","产品经理&#xff0f;前端开发&#xff0f;交互设计…

win7计算机共享权限访问权限,解决win7共享用户权限不完整的方法

在局域网中&#xff0c;我们经常需要设置共享让其他人访问&#xff0c;但是Windows共享设置比较麻烦&#xff0c;而且不同操作系统之间还有兼容性问题&#xff0c;往往你设置了老半天&#xff0c;还是莫名其妙无法访问&#xff0c;影响了工作。为此&#xff0c;本文推荐一种通过…

计算机协会申请流程,加入计算机协会申请书

各位协会会员&#xff0c;大家中午好&#xff01;我是来自11级计算机系的 XXX&#xff0c;很荣幸来到计算机协会这个大家庭中&#xff0c;相遇既是缘。风雨同舟路&#xff0c;依依兄妹情。缘分&#xff0c;让我们在云台山脚下相遇&#xff1b;热情&#xff0c;让我遇上了青春活…

智能设计应用于视频广告,从鲁班的视觉引擎谈起

最近云栖社区更新了一篇星瞳关于鲁班视觉引擎的介绍文章。视觉引擎的目标是可控视觉内容设计和生成&#xff0c;让 AI 做设计&#xff0c;使数字内容制造变得高质、 高效、普惠、低成本; 终极目标是“所想&#xff0c;即所见” &#xff0c;目前主要探索的应用&#xff1a;图像…

怎么关闭win7计算机一键还原系统,win7一键还原按哪个键_win7一键还原

2017-01-09 15:37:061.按F2&#xff0c;先从网上下载一键还原精灵的软件安装包&#xff0c;然后按照提示进行安装。2.安装完成这个一键还原软件之后&#xff0c;然后就进入了软件的功能界面&#xff0c;由于还原系统的时候必须要有一个Ghost镜像文...2017-03-19 12:57:40联想一…

2921年3月计算机二级office,国家二级计算机考试office怎么报名

ncre现在都是网上报名&#xff0c;各省都有统一报名系统1)考生首次登录系统需要注册登录通行证&#xff0c;若考生有通行证账号&#xff0c;可以直接登录。2)考生也可使用其他账号登录&#xff0c;例如使用“QQ账号”登录。点击图标&#xff0c;可根据提示操作&#xff0c;实现…

TensorFlow.js、迁移学习与AI产品创新之道

TensorFlow 的 JS 版本终于出啦&#xff0c;deeplearn.js 正式收编至 TensorFlow 项目&#xff0c;并改名为 TensorFlow.js &#xff1a;采用 WebGL 加速的基于浏览器的 JS 机器学习库。摘要&#xff1a;本文涉及 TensorFlow 基本概念的理解&#xff0c;迁移学习技术的实践应用…

计算机实验PPT情景短剧,计算机文化基本实验演示课件.ppt

计算机文化基本实验演示课件实验一&#xff1a;键盘与鼠标练习一;2 、计算机系统的启动与关闭&#xff1b;如果是首次使用的计算机(刚购买或搬动后重新连接的计算机)&#xff0c;应该检查计算机各组成部分的连接是否正确&#xff0c;特别需要检查计算机要求输入的电压是否为220…