比如说我需要针对几个不同的购物网站抓取产品进行比较搜索。
网站一产品名称:olay洗面奶
产品价格:120元网站二名称:玉兰油洗面奶
优惠价:125.00元/个网站数量不定,后期可能会追加,现在比较疑惑的是,比如说这个价格,一来中文叫法可能不同,导致我无法前期判断出网页中应该分析什么文字,二来网页中可能会出现类似相关产品这样的板块,如果里面也有价格怎么办?三来价格的格式,写法可能都不太一样,也会导致信息抽取的失败。不知道做过搜索引擎的大哥门,这样得问题一般都是从什么方向上考虑,希望能给个思路。

解决方案 »

  1.   

    比价的话是非常麻烦的。。比如笔记本的价格,你需要根据自己网站的价格然后分区在京东,新蛋等网站上根据笔记本这个关键词获取价格一般的做法是先获取网页内容,然后根据不同网站上层的ID等样式用正则去匹配然后去获取特定的innerHTML,再进行对比。对比都是实施是查询的,速度就快不起来让机器多干活的方法只有一种,那么就是根据你自己网站上的产品,写一个winform固定每天晚上比如凌晨3点去特定的网站获取价格内容,然后记录下来,那么就不需要实施去查询了。。但是价格不一定是innerhtml,也有可能是图片哦所以那个winform程序还是有点难度的
      

  2.   

    现在一直在琢磨dom结构加载,然后智能分词筛选的方案,头大,思路不是很清晰,如果对方的网页结构变来变去的就乐子大了,我有点好奇像聪明点之类的比较购物网站方案是啥样的?总不能有人一直盯着目标采集站点的结构天天跟着维护吧?希望找到一种相对智能点的解决方案,大家多给点思路。
      

  3.   

    网页有固定的标记吧
    例如 html  head  好的  你懂的!
      

  4.   

    1.只采集所有产品的列表
    2.看网站有没有提供api.比如淘宝就有.阿里妈妈也有.
    3.后期做大了可以联系网站负责人要求提供api.
    4.代码结构是否有变.可以根据几点来自动判断.代码特征和得到的结果等等.
    比如价格不是数字之类的.就会提示技术员更新采集规则.
    5.很多商城网站的结构都是相似的.你整页采下来.去掉非本站的.去掉重复的即可.
    6.价格
    优惠价 会员价 特价 清仓价 {特征:包含"价"字.后面跟数字}
    123元 ¥123  {特征:数字+单位,如元,美元,人民币,¥}
    7.网址特征:
    如包含product.item.之类的表示这个网址下的是产品.