上一期蕾奥技术研究文章中,介绍了网址规则,并利用网址规则采集了南山区所有二手房住宅小区页面的网址。本期将继续在已获取的网址上,借助网页源代码中的标签,提取页面中的目标数据。
2. 通过源代码中的标签截取页面中的信息
在测试网址采集结果正常后,点击上方标签“第二步:采集内容规则”。在左上部的“页面内容标签定义”中,删除软件已有的默认标签。
这一步是用页面标签来定位数据。原理是在源代码中找到数据前后出现的两段代码,且保证第一段代码在网页中是唯一存在的,则软件会自动采集两段代码之间的数据。
接下来开始分析网页元素,本篇以Google Chrome浏览器为例。在页面空白处单击右键,单击“查看网页源代码”和“检查”,会在新标签页中打开网页源代码,并在浏览器右侧会显示开发者工具。
单击开发者工具左上角的选择元素按键,点击页面上的标签,即可在开发者工具中看到对应代码。
此处以价格为例,当鼠标指到价格标签时,开发者模式中可以看到对应代码。
展开该代码块可见,average是二手房均价标签,unit是单位标签。
于是在网页源代码的页面中Ctrl+F搜索这两个标签,显示结果为
说明该网站在此处将价格隐藏。于是换一个思路,既然搜不到标签,直接搜价格“80233”,可以看到这次的结果变成了
这段数据为页面中历史售价曲线图的数据,而comm_midprice则为当前均价的标签。通过页面搜索显示,comm_midprice在这段代码中是唯一的。
因此复制该标签到价格前的所有内容,即"comm_midprice":",作为前段标签。
在火车采集器的“页面内容标签定义”部分,点击“添加”,设置标签名为“均价”,提取数据方式默认为“前后截取”,粘贴上文复制的开始字符串,再从代码中复制价格后的引号作为结束字符串。单击“确定”保存。
同样的方法,提取物业类型数据。选择页面上的物业类型数据后,可以看到开发者模式中显示的对应标签为:
在网页源代码中搜索该标签,显示结果仅有一个:
回到火车编辑器中添加该标签为:
以同样的方式,添加物业费、总建面积、总户数、建造年代、停车位、容积率、绿化率、开发商、物业公司等标签。