感谢吴老师的《数据新闻与网络数据挖掘》课程
感谢各位捧场的小伙伴们
本文适用对象为编程零基础者
仅供学习交流使用,请勿用于商业用途。
上期回顾
在教您最简单粗暴的MATLAB入门级爬虫2中,我们已经学会了循环结构的基本使用方式,可以实现爬取一页的酒店信息,甚至一个城市的多页酒店信息。但是在翻页的过程中,可能会遇到一个小问题:
打开第一页:
再打开第三页:
即使我们访问的是不同的页面,网址也没有变化:
“http://hotels.ctrip.com/hotel/beijing1#ctm_ref=ctr_hp_sb_lst”
但是若我们直接输入这个网址进行访问,只能获得第一页酒店的信息(感兴趣的可以自己去探究一下)。这里介绍一个寻找每一页所对应的网址的小技巧:
我们可以通过查找“下一页”按钮所链接到的网页,即去源代码中查找网址:
可以看到每一页的网址是:
"http://hotels.ctrip.com/hotel/beijing1/p"
+
“页码”,
例如:
第一页
"http://hotels.ctrip.com/hotel/beijing1/p1",
第二页
"http://hotels.ctrip.com/hotel/beijing1/p2"
等等。
因此可以编写代码如下:
在实现了大量数据的采集之后,通过代码将数据直接储存至文件中显然是一件更加方便的事情,可以省去我们复制粘贴等重复的机械性操作。
我们普通的输出是将所需要输出的内容写在命令窗口上,那么类比可知,若我们想要将这些内容以文件形式输出,只要打开一个文件并写入至文件中即可。通常使用fopen函数打开文件,fprintf函数写入文件。
这样就可以成功输出文件了
若想使用excel处理数据,则直接通过excel打开beijing.txt,选tab键作为分隔符号,就可轻松导入了。
今日总结
·实现文件输出
·导入excel
至此,基础的MATLAB爬虫操作已经基本介绍完毕了,各位可以自己举一反三,尝试爬取其他网站,或尝试改进成更符合自己需求的爬取方式。也可以试着学习python,感受功能更强大的网络爬虫技术,或学习一些计算机网络和网页编写相关的知识,更好地理解爬虫的原理,也能更轻松地获取数据。
祝各位学习愉快!
领取专属 10元无门槛券
私享最新 技术干货