4.1 需求分析 通过对淘宝电子商务网站中的交易数据和用户概要信息,以及商品信息的分析,设计如下的数据项和数据结构[2]。 (1)用户信息表。淘宝是典型的C2C类网站,所以用户在网站上既可以是买方也可以卖方,其数据项包括,用户ID、差评和中评次数、注册时间、信用度、信用评价分数等。 (2)交易信息表,交易信息表主要包括交易过程中产生的诸如商品价格、用户评价、用户评价时间、商品ID号、交易ID号及评价分数等。 (3)产品信息表,产品信息表主要包括产品ID号、产品图片地址、产品类别ID号、产品类别名称、产品名称、产品出产地等。 4.2 数据库概念结构设计 基于上述对数据结构的描述,规划出的实体间关系图,如图1所示。 5 交易数据提取流程(Transaction data extraction rocess) 由设计好的交易数据选择方案,首先提取产品、交易及买卖双方的各类交易数据,提取数据的具体步骤及相关API使用方法如下所示。 5.1 提取商品数据 (1)利用商品API中的taobao.product.get,获取商品的类别及子类别编号。 (2)利用评价API中的taobao.traderates.get函数,获取产品的详细信息,并将其放入相应的XML格式文档中;php格式调用如下所示。 (3)通过编程语言分析XML格式的畅销商品的详细信息文档,抓取具体的商品信息,并将信息存储到数据库里的产品表taobao_item中。 5.2 提取卖方 ID 对于产品表taobao_Item中的每个商品记录,采取以下步骤: (1)分析并读取产品记录中的产品ID号。 (2)使用产品API中的taobao.item.get,填入商品ID作为该API的输入参数值,以获取出售该商品的卖方ID,并将获得的值存入用户表taobao_user中。其php格式调用方法如下。 $c = new TopClient; $c->appkey = appkey; $c->secretKey = secret; $req = new ItemGetRequest; $req->setFields("num_iid,title,price,desc_modules,sell_point"); $req->setNumIid(3838293428); $req->setTrackIid("123_track_456"); $resp = $c->execute($req, $sessionKey); 5.3 提取交易数据 采取以下步骤获取产品卖方的记录值,并存入taobao_User表中 (1)获取卖方记录中的卖方ID号。 (2)通过调用店铺API中的taobao.shop.get获取卖方出售的商品的每笔交易的详细交易记录和反馈评价记录数据,并将最终结果存入到数据库的交易表taobao_Transaction中。Php格式调用方法如下所示。 $c = new TopClient; $c->appkey = appkey; $c->secretKey = secret; $req = new ShopGetRequest; $req->setFields("sid,cid,title,nick,desc,bulletin,pic_path,created,modified"); $req->setNick("卖家昵称"); |