学习新知识
微信号新开一个小栏目,取名【学习笔记】,主要分享一些与统计学、数据分析、数据挖掘有关的技能。
每天进步一点点,总比停下来什么也不做好很多。走出舒适区,才能获得新知识。
在上一次笔记中,我说要把《小白零编程网络爬虫实战》第二章节的内容拆分学习效果可能会更好。今天看第二阶段的学习内容:从列表页跳转至内容页抓取数据,并将数据存入access数据库。
与第一阶段相比,从列表页深入到详情页抓取数据,数据存储方式由txt文本进阶为access数据库,也可以由此导出为excel表格数据。
1
抓取需求分析
从陕西某网站一级页面抓取新闻列表,然后进入二级详情页面抓取新闻来源信息,将抓取到的新网标题、网址、发布日期以及新闻来源存储到access数据库,最后统计分析该网站新闻来源分布情况,了解陕西本地新闻源(因为小兵是陕西人,目前在西安工作)。
02
脚本逻辑分析
创建一个新的脚本,一个列表页20条新闻列表,最多可提取10页。抓取逻辑是首先在列表页抓取新闻标题、网址及发布日期,然后进入新闻内容的详情页面抓取新闻来源,循环9次完成。这一次脚本实践共有19步,比第一阶段的实践多出11个步骤。
03
采集速度优化
由于火车浏览器要打开网页渲染网页,尤其是从一级列表页跳转至二级内容详情页,这个过程会造成抓取速度缓慢的问题,所以在开始抓取前,首先加入过滤网页弹窗、关闭广告、禁用框架图片等功能,优化脚本执行的速度。
这项功能十分实用,尤其是小白用户在创建脚本时要多次测试,大大提高执行效率。
04
数据库部署
文彤老师推荐小白用户首选access数据库,我想只要是安装了office办公软件的电脑上应该都有access数据库吧,不用额外安装,使用起来比其他数据库更方便,而且和excel天然是一家,导出表格数据非常便捷。
05
抓取结果展示
此次实践共采集到近200条新闻信息,截取一部分抓取的结果(新闻来源标签略有调整),如下:
接下来就是针对[来源]这个变量进行统计汇总,绘制一个可视化图形来展示具体结果。如下:
文字解读一下,该网站的主要新闻来源包括华商报(华商网)、三秦都市报(三秦网)、陕西传媒网、陕西日报、西部网,这五家新闻源提供了陕西本地83%的新闻内容(结论只用于本次数据实践请勿外推),其他新闻源还包括西安日报、西安新网网、新华网、央视网等来源网站。
特别说明,本次实践仅为学习使用,如有侵犯相关网站权益,请告知立删。
如果有读者也对爬虫感兴趣,而且是像我一样的编程恐惧症小白,我推荐文彤老师的课程,如下扫码了解。
长按图片识别二维码关注详情
领取专属 10元无门槛券
私享最新 技术干货