连续动作实战:自动输入查询条件抓取微信公众号

2015-11-7 23:56| 发布者: Fuller| 查看: 15817| 评论: 2

摘要: 《连续动作应用场景(三)自动输入查询条件微信公众号》一文对连续动作中的自动输入查询条件的场景进行了描述,主要目的是利用搜狗的微信公众号搜索功能,把包含某些关键字的微信抓下来,本文讲解规则定义过程 ... . ...

1. 阅读指引

连续动作应用场景(三)自动输入查询条件微信公众号》一文对连续动作中的自动输入查询条件的场景进行了描述,主要目的是利用搜狗的微信公众号搜索功能,把包含某些关键字的微信抓下来。为了达到抓取目的,需要做如下步骤

  1. 进入到一个入口页面,在查询条件输入框中自动输入关键词,并自动点击提交按钮
  2. 抓取查询结果
  3. 如果查询结果分成多个分页,则翻页抓取
  4. 如果定义规则的时候定义了多个关键词,那么输入下一个关键词,回到第一步


本文讲解规则定义过程,如果有些过程与普通的规则定义过程一样,则跳过。

2. 选择入口页面

连续动作应用场景(三)自动输入查询条件微信公众号》一文认为定义两个采集规则比较合适:

  1. 第一个抓取规则:用关键词搜索微信公众号,负责输入查询条件和点击提交按钮。这个规则可从如下地址下载:http://www.gooseeker.com/res/detail_96793.html
  2. 第二个抓取规则:用关键词搜索微信公众号_搜索结果,把搜索结果抓下来,如果有分页,则翻页抓取。下载地址:http://www.gooseeker.com/res/detail_96797.html

运行的时候,从第一个规则开始,会自动过渡到第二个规则。第一个规则使用的样本页面就是入口页面,请注意,要实现连续输入,那么选择样本页面的时候要注意,第一个规则和第二个规则使用的样本页面应该结构一样,否则,输入第二个关键词的时候,就会定位不到输入框和提交按钮了。

3. 第一个规则的工作台

如上图所示,第一个抓取规则的爬虫路线工作台上不要定义翻页抓取规则,可以定义二级抓取规则。因为翻页抓取是第二个规则要执行的操作。所以,第一个规则重点是定义连续动作。

  1. 输入第二个抓取规则的主题名,即用关键词搜索微信公众号_搜索结果
  2. 点击新建按钮,创建第一个动作,即输入查询条件,所以选择输入类型。
    • 输入要查询的关键词,如果要连续查询多个词,则用双分号(;;)把词隔开
    • 输入定位表达式,也就是能够在网页上定位到输入框的XPath表达式,写好一个表达式后,可以利用MS谋数台的搜索功能,验证一下是否定位准确,具体参看搜索网页内容的使用方法
  3. 再次点击新建按钮,创建第二个动作,即点击提交按钮,所以选择提交类型。
    • 输入定位表达式,也就是能够在网页上定位到搜狗搜索按钮的XPath表达式,写好一个表达式后,可以利用MS谋数台的搜索功能,验证一下是否定位准确

最后点击工具条上的存规则按钮,把抓取规则存起来。

4. 定义第二个规则

因为第一个规则和第二个规则的样本页面一样,如果紧接着定义第二个规则,则有两种方法可选:

  1. 或者选择“新建”菜单从头定义抓取规则;
  2. 或者在现有工作台上修改现有规则并改主题名后保存即可。

上图显示定义翻页抓取规则,这与普通规则定义没有区别,只是我们这里用了定点线索类型,跟记号线索一样也能翻页。

5. 加载以前定义的抓取规则

因为两个抓取规则使用了相同的样本页面,用MS谋数台连续先后加载两个抓取规则时,第二个就中断了,因为MS谋数台不允许加载样本页面相同的两个规则。在这种情况下,在加载第二个之前,先在地址栏中输入about:blank,并敲回车键,先把浏览器清空,然后再加载第二个规则。

2

鲜花

握手
1

雷人

路过

鸡蛋

刚表态过的朋友 (3 人)

相关阅读

发表评论

最新评论

评论 Fuller 2016-10-20 17:05
sayjin: 网页内的“搜索”按钮,表达式ID栏没有文字啊,怎么定位表达式
你在 使用交流 那里发帖吧,那里可以贴图和网址,我帮你分析一下
评论 sayjin 2016-10-20 16:42
网页内的“搜索”按钮,表达式ID栏没有文字啊,怎么定位表达式

查看全部评论(2)

GMT+8, 2024-12-4 00:50