一、操作步骤
如果网页上有搜索框,但是搜索结果页面没有独立网址,想要采集搜索结果,直接做规则是采集不到的,要先做连续动作(输入+点击)来实现自动输入关键词并搜索,然后才能采集数据。下面用京东搜索为例,演示自动搜索采集,操作步骤如下:
二、案例规则+操作步骤
第一级采集规则:连续动作_京东搜索
第二级采集规则:京东空调列表
样本网址: https://list.jd.com/list.html?cat=737,794,870
采集内容:京东商品的名称、价格、链接
注意:本案例京东搜索是有独立网址的,对于具有独立网址的页面,最简单的方法就是构造出每个关键词的搜索网址,然后把线索网址导入到规则里,就可以批量采集,而不是设置连续动作
第一步:定义第一级规则
1.1打开集搜客网络爬虫,输入网址并Enter,加载出网页后再点击“定义规则”按钮,看到一个浮窗显示出来,称为工作台,在上面定义规则;
注意:这里的截图和文字说明都是集搜客网络爬虫版本,如果您安装的是火狐插件版,那么就没有“定义规则”按钮,而是应该运行MS谋数台
1.2在工作台中输入一级规则的主题名,再点击“查重”,提示“该名可以使用”或“该名已被占用,可编辑:是”,就可以使用这个主题名,否则请重命名。
1.3本级规则主要是设置连续动作,所以,整理箱可以随意抓取一个信息,用来给爬虫判断是否执行采集。双击网页上的信息,输入标签名,并打勾确认,再勾上关键内容,首次标注还要输入整理箱的名字,然后就完成标注映射了。
Tips:为了能准确定位网页信息,点击定义规则会把整个网页定格住,不能跳转网页链接,再次点击定义规则,才会恢复回普通的网页模式。
第二步:定义连续动作
点击工作台的“连续动作”页签,点击新建按钮建立一个新动作,每个动作的设置方法都是一样,基本操作如下:
2.1 ,输入目标主题名
这里的目标主题名是填第二级主题名,点击“谁在用”查看目标主题名是否可用,如果已经被占用,换一个主题名就行
2.2, 创建第一个动作:输入
新建一个动作,并选择动作类型为输入。
2.2.1,填写定位表达式
首先鼠标单击输入框,定位输入框的节点,然后点击“自动生成XPath”按钮,可以选择“偏好id”或者“偏好class”,就可以得到输入框的xpath表达式,再点击“搜索”按钮,检查一下这个xpath是否能唯一定位到输入框,没有问题就把xpath复制到定位表达式方框里。
注意:定位表达式里的xpath是要锁定动作对象的整个有效操作范围,具体就是指鼠标能够点击或输入成功的网页模块,不要定位到最底层的text()节点。
2.2.2,输入关键词
输入关键词填写你想搜索的关键词,可以输入一个关键词,也可以输入多个关键词,输入多个关键词要用双分号;;将每个关键词隔开,免费版只支持5个以内的关键词,旗舰版可以使用连发弹仓功能,支持1万以内的关键词
2.2.3,输入动作名称
告诉自己这一步动作是用来干嘛的,方便以后修改。
2.3,创建第二个动作:点击
参考2.2的操作,创建第二个动作,选择类型为点击,定位到搜索按钮,然后自动生成xpath,检验是否锁定到唯一节点,没问题的话填到定位表达式里就行了。
2.4,存规则
点击“存规则”按钮保存已完成的第一级规则
第三步:定义第二级规则
3.1,新建规则
创建第二级规则,点击“定义规则”恢复到普通网页模式,输入关键词搜索出结果后,再次点击“定义规则”切换到做规则模式,点击左上角“规则”菜单->“新建”,输入主题名,这里的主题名就是第一级规则的连续动作里填写的目标主题名。
3.2,标注想要采集的信息
3.2.1,标注网页上想要采集的信息,这里是对商品名称和价格做标注,因为标注只对文本信息有效,商品详情的链接是属性节点@href,所以,不能对链接做这样的直观标注,而要做内容映射,具体看下面的操作。
3.2.2,点击商品名称,下面的DOM节点定位到A标签,展开A标签下的attributes节点,就可以找到代表网址的@href节点,右击节点,选择“新建抓取内容“,输入一个名字,一般给这个抓取内容起一个和地址有关的名字,比如“下级网址“,或者”下级链接“等等。然后在工作台上,看到这个抓取内容有了。如果还要进入商品详情页采集,就要对着这个抓取内容勾选下级线索,做层级抓取。
3.2.3,设置“关键内容”选项,这样爬虫才能判断出采集规则是否合适。在整理箱里选一个网页上必然能采到的标签,勾上“关键内容”。这里选择的是“名称”做为“关键内容”。
3.2.4,前面只对一个商品做标注,也就能得到一个商品信息,如果想把一整页上每一个商品都采集下来,可以做样例复制,不懂的请参考基础教程《采集列表数据》
3.3,设置翻页路线
在爬虫路线设置翻页,这里用的是记号线索,不懂的请参考基础教程《设置翻页采集》
3.4,存规则
点击“测试”,检查信息完整性。不完整的话,重新标注就可以覆盖之前的内容。检查没问题后点击“存规则”。
第四步:抓数据
4.1,连续动作是连续执行的,所以只要运行第一级主题,第二级主题不用运行。打开DS打数机,搜索出第一级主题名,点击“单搜”或“集搜”,此时可以看到浏览器窗口里会自动输入关键词并且搜索,然后调用第二级主题自动采集搜索结果。
4.2,第一级主题没采到有意义的信息,所以,我们只看第二级主题的文件夹,就能看到采集的搜索结果数据,并且搜索的关键词是默认记录在xml文件的actionvalue字段中,这样就能一一对应起来。
领取专属 10元无门槛券
私享最新 技术干货