模板说明

 ############# 功能介绍 #############
1. 提交按钮:
    提交页面url,需要以http://开头;


2. 开始按钮:
    有些网页,资源加载很慢,例如:http://www.taobao.com/


3. 过滤按钮:
    有些页面会布满整个窗口,例如:http://www.vipshop.com/tour/tour_detail.php?act=hotel&id=1872
    有些页面加载后仍处于不可标定状态,例如:http://detail.tmall.com/item.htm?id=14571810265


4. 标定窗口:
    a) 提交url后,标定窗口会显示出整个页面;
    b) 页面加载完成后,鼠标移到标定窗口上,对应的标签元素显示红色边框,同时,“dom路径栏“会出现该元素对应的dom路径;
    c) 鼠标点击某个元素后,提示是否确定选择此元素,点击确认后,该元素背景变成绿色,同时,”当前标定元素的dom路径栏“会出现该元素的dom路径
    d) dom路径的结构说明
        形式: div@id_value@class_value@index
        说明:
        1) div:标签名称;
        2) id_value:标签的id属性值;
        3) class_value:标签的class属性值;
        4) index:此标签 在同级的相同标签中的位置,从0开始;


5. 站点要素区:
    a) 标识: 站点唯一标示(cid);
    b) 域名: 例如,taobao.com;
    c) 别名: 有些站点可通过两种域名访问,需要将其中一个作为域名,另一个作别名(一般不需要维护);
    d) 类型: 页面类型,一般为list、info或item。(点击操作按钮时,自动生成)
       info:资讯站的文章页
       item:电商站的商品详情页
       list:资讯或电商的列表页
    e) 来源: 用于标定模板的url。(点击提交按钮时,自动生成);


6. 抓取字段区:
    a) 关键项:必选的抓取字段,体现在模板中为reqiure字段;
    b) 同级多个:如,列表页的多商品块,cate字段;
    c) 链接:是否是链接;
    d) 链接类型:链接对应的页面类型(info、item...);


7. 操作按钮与dom树窗口
    a) 操作按钮
        测试: 每标定一个字段后,点击此按钮,测试该字段正确性;
        确认: 测试成功后,点击确认,进入下一字段标定过程;
        提交: 所有可标字段标定完毕,点击此按钮生成模板;
        过滤: 测试时,dom路径包含tbody,但源码中却没有tbody时,点击此按钮过滤tbody标签。
        
    b) 结果: 测试时,显示测试结果;
    c) 路径: 配合dom树窗口,点击dom树节点时,显示该节点元素的部分dom路径;
    d) 值: 配合dom树窗口,点击dom树节点时,显示该节点元素下的内容;
    e) dom树窗口:测试失败时,显示测试错误的dom结构树,辅助dom路径的确认;




 ############# 关于字段的几点说明 #############
 
1. 抓取字段的含义:


   a) 资讯
      title: 文章标题
      cate: 文章类目(一般指面包屑)
      newstime: 发布时间
      author: 文章作者
      keywords: 关键词
      brief: 文章简介、导读
      source: 文章来源
      contents: 文章正文
      relates: 相关文章列表
      nextpage: 分页文章的下一页链接
      
    b) 资讯列表
      cate: 文章列表类目(一般指面包屑)
      items: 列表块
        |—— itemlink: 列表中文章的链接
        |—— itemname: 列表中文章的标题
      
    c) 电商
      name: 商品名称
      cate: 商品类目(一般指面包屑)
      item_num: 商品id
      price: 价格
      market_price: 市场价格、原价等
      large_img: 大图链接
      small_img: 小图链接
      brief: 商品简介
      description: 商品详情(描述)
      brand_name: 品牌
      quantity: 剩余数量
      hot-view: 浏览数
      hot-sale: 销量
      hot_comment: 评论数
      tag: 商品标签
        
    d) 旅游
    e) 电商列表
      cate: 商品列表类目(一般指面包屑)
      items: 商品块
        |—— imgurl: 商品图片
        |—— itemlink: 链接
        |—— itemname: 商品名称
        |—— price: 价格
        |—— market_price: 市场价、原价 


2. 抓取字段->关键项:每种类型页面中,一般作为关键项的字段。


                    |  必须的                  |       需要根据页面确定的
   ---------------------------------------------------------------------------------
   a) 资讯页:      |  title, contents      |      cate
   ---------------------------------------------------------------------------------
   b) 资讯列表页:  |  items                |      cate
   ---------------------------------------------------------------------------------
   c) 商品/旅游页: |  name,large_img       |      description, price,cate
   ---------------------------------------------------------------------------------
   d) 电商列表页:  |  items                |      cate
   ---------------------------------------------------------------------------------


3. 以下情况中,在生成模板后还需要在模板管理中,手动修改,
    a) 图片字段(large_img、small_img、imgurl等):
        解析程序,默认将模板中的img元素作为图片解析, 默认从元素的src字段取改图片链接。
        所以,需要分析已生成的模板,看一看:
        1) 图片字段是否都是img元素,若不是,则需要在该模板的图片字段上添加 isImg="true" ;
        2)在页面源码中,该图片链接是否在src属性中,若不是,则需要在该模板的图片字段上添加 attname="xxx"(其中,xxx是属性名),用于告知解析程序,从哪个属性上取图片链接;
   
    b)链接字段(itemlink等):
        分析已生成的模板, 检查链接字段的以下属性,是否存在、是否正确。
        link:(true, false) 表示 是否为链接,形式为 link="true"
        linkType: (info, item...)表示 链接的类型, linkType="info"
        linkatt: 表示,从哪个属性上取链接(解析程序,默认从href中取链接,若在其他属性上,则在该链接字段上添加 linkatt="xxx")
        
    c) 检查抓取字段, 是否需要收集该元素下的图片, 若需要,则添加 needImg="true"
    d) 检查抓取字段,是否需要保留html源码,若需要,则添加 html="true"


 ############# 其他注意事项 #############


1). 每次标定新的页面时,需要刷新页面;


2). 标定模板时,若用于标定的url,与已有模板的testurl相同时,不生成新模板,而是更新现有模板;


3). 偏树情况,需要从几个错误树分析。


4). 标定过程中,几点需要特殊处理的情况: 
 
    a). 标签的class包含动态变化值,如,pic_slider_cur, hover等, ———— 应该将此class值去掉
    b). 标定后的dom路径不正确,如:标图片时,标定却是span元素, ———— 需要分析源码,将dom路径改为与页面源码结构一致
    
    总之,在标定测试的过程中,出现测试结果不正确的情况时,一般,首先应该检查dom路径与页面源码是否保持一致,再做其他分析。
    
5). 标定后,需要检查生成的模板,看一看dom路径中是否,有包含以“文章或商品id“ 作为class或id的情况,若有,则需要从模板中去掉这样的class或id;
    建议,每次标定完成后,用该站中的相似页面,作一下页面解析测试,验证解析结果的正确性;
    
6). 标定后,需要测试解析结果是否理想,尤其注意的字段有:
    
    a) 链接字段:链接是否正常;
    b) 图片字段:是否是对应的大图小图,是否需要指定attname来取图片url
    c) 多块字段:
        解析结果数,是否正确
        解析块中的字段值,是否正确
        需要将 区分不同块的 标签元素的index,变为*
        若有多个用于 区分不同块的标签元素 时,检查block节点的path属性中,是否包含全部标签路径,若不是全部,将缺少的标签元素从上级节点移至该block节点,并将index改为*
    
7). 下一页:
    a) 能区分下一页链接: 直接标定
    b) 不能区分下一页链接: 需要按照同级多个的方式标定, 例如:http://www.gfan.com/app/tools/2012082821908.html
    c) 标定后,进行多个页面的解析测试,观察nextpage字段是否正确;
    
8). 接到解析失败邮件后:
    a) 首先到模板管理界面中查找,看是否已存在改站点模板;
    b) 若以存在该站模板,接着,可尝试用解析失败的链接在已有模板中做对比测试,看是模板失效了,还是该链接为新的页面结构。
    c) 若为模板失效,则用已有模板的testurl,做标定
    d) 若为新页面,则用新的url,做标定
    
注意:在解析失败的站点中,若发现已有的模板中,包含很多非标准字段,则该站点不作补充标定,最好做记录发给我们;

你可能感兴趣的:(模板说明)