采集电子商城价格信息建立商品比价系统

本文展示的解决方案与《监控电子商务网站进行竞争性商品定价》讲解的方案有很多共性,但是,后者更侧重于监控的及时性,因此,采用了一些专门的提高及时性的措施。而本文的方案是一个更平常的网站信息采集方案。

需求分析

持续地自动化地从卓越和当当上采集图书信息,将下述信息从网页上提取出来:

  • 商品编号(ISBN)、
  • 商品名、
  • 监测网站、
  • 商品网址、
  • 监测日期、
  • 监测时间、
  • 商品定价、
  • 销售价格、
  • 是否促销、
  • 是否可售

将提取到的信息转换成比价系统需要的格式(例如,EXCEL,CSV,SQL等),并自动传送给比价系统。

目标网站上的图书数量总共在2百万以上,而且持续补充新的图书商品,需要利用网站信息采集工具包MetaSeeker的周期性增量提取功能。



信息提取结果样例


样本页面选取

MetaSeeker软件包中的MetaStudio是网站信息采集规则生成工具,用户在样本页面上通过GUI界面指导系统生成采集规则,生成的规则可以用于所有其它图书网页。两个网站的样本页面分别是:

  • 卓越网样本页面:http://www.amazon.cn/mn/detailApp?ref=GS&uid=480-2534229-1177512&prodid=zjbka03k9m
  • 当当网样本页面:http://product.dangdang.com/product.aspx?product_id=20727266&ref=bang-02-I

样本页面分析

绝大多数待提取内容都是网页上的文字,直接参照MetaStudio用户手册进行映射即可,说明如下:

  • 当当网上“是否可售”没有直接可提取内容,但是可以根据“购买”按钮和“缺货”按钮判断是否可售,所以,下面的样例是提取按钮信息
  • 卓越网上“是否可售”有文字“现在有货”,可以用以判断是否可售
  • 需求中的“商品编号”理解为ISBN号
  • 其它所有字段在网页上都是普通文本内容,不需要进行特别转换(例如,图片识别)

特殊类型的信息(例如,关于按纽的信息)可以在将提取结果存入数据库时由MetaCorpora进行过滤和转换。


信息提取结果文件样例

卓越样本页面提取结果:

 <?xml version="1.0" encoding="UTF-8"?>
 <math><extraction></math>
   <clueid>3012266</clueid>

   <fullpath><![CDATA[http://www.amazon.cn/mn/detailApp?ref=GS&uid=480-2534229-1177512&prodid=zjbka03k9m]]></fullpath>
   <theme>demo_book_amazon</theme>
   <middle>default</middle>

   <createdate>2010-5-22 10:23:43</createdate>
   <baseURI>
     <bucketBaseURI>
       <bucketName>图书信息</bucketName>
       <uri><![CDATA[http://www.amazon.cn/mn/detailApp?ref=GS&uid=480-2534229-1177512&prodid=zjbka03k9m]]></uri>

     </bucketBaseURI>
   </baseURI>
   <图书信息>
     <item>
       <商品名>男人这东西(两性关系读本)</商品名>

       <商品定价>28.00</商品定价>
       <销售价格>20.20</销售价格>
       <是否可售>现在有货。</是否可售>
       <商品编号>750635232X/9787506352321</商品编号>

     </item>
   </图书信息>
 </extraction>

当当样本页面提取结果:

 <?xml version="1.0" encoding="UTF-8"?>
 <extraction>

   <clueid>2770403</clueid>
   <fullpath><![CDATA[http://product.dangdang.com/product.aspx?product_id=20464285&ref=bang-02-I]]></fullpath>
   <theme>demo_book_dangdang</theme>

   <middle>default</middle>
   <createdate>2010-5-22 10:23:11</createdate>
   <baseURI>
     <bucketBaseURI>
       <bucketName>图书信息</bucketName>

       <uri><![CDATA[http://product.dangdang.com/product.aspx?product_id=20464285&ref=bang-02-I]]></uri>
     </bucketBaseURI>
   </baseURI>
   <图书信息>
     <item>

       <商品名>好妈妈胜过好老师</商品名>
       <商品编号>I S B N    : 9787506345040</商品编号>
       <商品定价>¥28.00</商品定价>
       <销售价格>18.20</销售价格>

       <是否可售>images/booksale.gif</是否可售>
     </item>
   </图书信息>
 </extraction>

注:在MetaSeeker服务器上,此两个网站的信息提取主题分别是:demo_book_amazon和demo_book_dangdang,读者可以自行使用MetaStudio加载和验证提取规则,并使用DataScraper验证提取结果。



系统结构


Figure 1(Enlarge)

如图所示,

  • MetaSeeker采用信息采集云计算框架,实现高性能、高密度网站信息采集和提取,其中包括MetaStudio、DataScraper、MetaCamp、DataStore等四个软件客户端工具和服务器
  • MetaCorpora是MetaSeeker工具包的另一个软件,是文本分类语料库管理器和网络信息提取结果预处理工具。