添加多级网址之手动填写链接地址规则
一、原理
手动填写链接地址规则原理是编写脚本规则,去和源代码里的内容匹配,获取到自己设置的参数即可。
使用到的正则解释
[参数]
用来匹配某项准备提取信息的标记标签,如想要在以下代码中提取组合出某种格式。以从代码"mClk(this,'108484','134217', '168475','1');"中提取组合出新的地址格式为例。
"mClk(this,'[参数]','[参数]', '[参数]','1'); ",按照次序,108484参数就是参数1,依次类推。实际需要的地址为以下的地址格式:bbs/read.php?id=[参数1]&sort=[参数3]&action=[参数2],上面代码中的3个参数和下面地址中的id,soft和action参数要对应相应的值,次序不要颠倒。这样就组合成了新的地址格式。
(*)
(*)为通配符,在火车采集器可以在起始地址中代表页码数,在标签规则,模块或其他设置中可匹配代表任意字符串,如(*)可以匹配到xxx字符串也可以匹配到yy字符串。
二、使用场合和使用方法
1、一般可以使用自动获取网址链接的网页都是可以使用手动获取。手动填写链接地址的灵活性比较高!
2、网页源代码中的内容页链接不规范,或者网址中没有链接的时候,都可以使用手动填写链接地址规则。
举例说明:
例一、如ajax链接
查看源代码可知,网址链接不规范,这样的链接地址就不能直接使用自动获取网址了。
解决方法:
脚本规则:
实际链接:http://[参数1]/[参数2]/[参数3]/
例二、例如列表页里只有内容页的一个ID,其他的网址信息都没有的,这样也可以使用手动填写链接地址规则获取。
列表页网址:http://www.anshan.gov.cn/contentdoc/getdoclist.jsp?fieldid=1005&p=0&perpage=30&keyword=null
内容页网址:http://www.anshan.gov.cn/contentdoc/docContent.jsp?oid=55700
查看源代码可知,网址链接也是不规范的。
解决方法:
脚本规则:|(*),[参数],
实际链接:http://www.anshan.gov.cn/contentdoc/docContent.jsp?oid=[参数1]