`
ckw90ckw
  • 浏览: 16970 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

怎样采集淘宝宝贝的用户评价信息

阅读更多

怎样采集淘宝宝贝的用户评价信息
2011年03月15日
  MetaSeeker速成手册从《卓越网翻页抓取不了怎么办》 开始连续多章讲解采集AJAX网站的技巧。AJAX网站内容使用Javascript编程语言动态显示,给普通网络爬虫造成很大障碍,而网站采集器MetaSeeker 嵌 入了一个完整的web浏览器,理论上说,网页上能够看到的内容都能够采集下来。但是,Javascript是一个强大的编程语言,AJAX网页内容显示技 巧千变万化,在不定制的情况下,几乎不可能存在一个能够应对所有AJAX情形的网站采集器。这也是MetaSeeker快速升级的原因:将最新出现的 AJAX开发模式纳入其中。2010年5月,MetaSeeker再次为提升AJAX网站采集能力 进行了升级,主要目的是采集淘宝宝贝的用户评论信息,中国人民大学某研究室的科研项目期望从淘宝宝贝的普通商品信息和用户评论信息中挖掘出某些关联规则。本文将详细解释淘宝宝贝的评论信息的采集规则的定义方法。
  对采集目标的描述:  样本页面 :http://item.tmall.com/item.htm?id=8517156144&sourc e=dou&prc=2&cm_cat=50029375
  主题名
  demo_TB_detail :采集淘宝宝贝的普通信息 
  demo_TB_comment :采集用户评论信息 
  采集的内容 
  采集商品信息 
  商品名 
  商品价格 
  采集所有用户评论 
  内容  日期  买家 
  买家网址 
  翻页采集所有评论信息 
  注释1 :目标网站的网页结构可能会改变,一些重大改变将影响信息结构 的可用性,如果加载本文提到的信息结构时发现某些信息属性 (用于存储采集到的数据的字段)定位失败,请参照《修改失效的采集规则》 调整信息属性的映射关系。 
  注释2 :本文非入门教程,所以,不会将操作步骤一步步分解开并用屏幕截图显示出来,如果需要入门知识,请顺序阅读《MetaSeeker速成手册》。  在淘宝宝贝网页上,用户评论显示在"评价详情 "标签(Tab)下,点击这个标签时,网页使用Javascript从淘宝服务器上将评价信息下载并显示出来。下面我们做个实验。  
  
  图1   图1有如下步骤:  等待网页加载完成,此时,MetaStudio底部的状态条上显示"完成 "字样。 
  关闭反向选择 ,即复选框(checkbox)不要勾选。 
  点击网页上的"评价详情 "标签,可以看到网页内容改变了,用户评论信息显示了出来 
  设置反向选择,以便快速定位DOM节点。 
  选择一条评论信息,用鼠标点击它 
  弹出一个对话框,显示"Error: Cannot find the node",说明MetaStudio没有在DOM树上定位到对应于被点击的用户评论的DOM节点。如果定位成功,DOM树应该自动展开,并且在对话框中显示定位到的DOM节点号。 
  此时,选择MetaStudio的菜单"文件 "-〉"刷新DOM ",再点击网页上的用户评论,成功定位到DOM节点。这说明一开始加载的网页上没有用户评论,用户评论是后来通过Javascript程序异步加载上来的。这是判断是否用AJAX显示网页内容的重要准则。  为了采集用户评论信息,DataScraper必须模拟用户点击"评价详情 "标签,所以,需要定义两个信息结构:第一个从样本页面上采集普通信息并模拟用户点击;第二个从用户评论列表中采集信息。这跟层级导航采集 的原理一样,但是,普通的层级采集是导航到其它网页,而本例没有导航到其它网页,仅仅局部修改网页内容。 
  
  图2  图2有如下步骤:  为所有信息属性作数据映射和FreeFormat 映射,FreeFormat映射虽然不是必须的,但是可以大大提高采集规则的适应度,即使目标网站的网页结构修改了,采用FreeFormat技术可以在一定限度内确保采集规则不失效。 
  为整个整理箱做FreeFormat映射,用以提高定位精度,其原理说明参见《采集新蛋网商品价格》
  
  图3  图3显示了很多步骤,并不是采集淘宝宝贝信息所特有的,而是我们期望通过这个案例讲解更多使用技巧。步骤如下:  转到Clue Editor 工作台,并点击newClue 按钮创建一条线索 (用于指导网络爬虫采集其它网页) 
  设置成线内线索 类型,但是不是为了翻页导航采集,而是为了导航到用户评论。关于线内线索和翻页采集请参见《批量采集当当网价格》
  点击Marker 单选钮(radio button),表示根据网页上的记号定位线索,本例的记号就是文字"评价详情 " 
  通常情况下,一旦设置成线内线索,目标主题名称 一栏就填入了当前主题名,可以参看翻页采集案例 ,但是,点击"评价详情 "后,网页内容被局部修改了,而且要采集的用户评论显然与当前主题采集的商品信息属于不同语义范畴,所以,应该另起一个主题名,即填入:demo_TB_comment
  设置反向选择 模式,以便快速定位DOM节点 
  点击"评价详情 "标签。因为设置了反向选择模式,所以,内嵌浏览器并没有向淘宝服务器发起下载评论信息的请求,相反,自动定位到DOM树上的对应节点 
  在DOM树上找到代表整个标签条的那个节点,并作线索映射,表示在这个网页区域内定位线索 
  在DOM树上找到包含内容"评价详情 "的那个TEXT节点,做记号映射。应该注意到 :这个记号的完整内容是"评价详情( ",后面的括号是不需要的 
  设置记号模式,不勾选这个复选框,表示只要网页上出现记号值就表示符合规则,这叫包含模式 ,而不需要网页节点内容与记号完全一致,这叫相同模式 ,这是为了配合第8步和第10步。 
  编辑记号值,删除后面的括号。第8、9、10三步是可选操作,察看生成的导航采集规则(点击viewSCE 按钮)可以看到差别。 
  点击MetaStudio工具条的schema 按钮,将信息结构和MetaStudio自动生成的采集规则上载到服务器上,以便DataScraper随时随地采集网络内容。  首先选择MetaStudio的菜单项"文件 "-〉"创建工作台 "清空工作台。 
  
  图4 
  清空工作台后,参照图4进行如下步骤:  填写主题名demo_TB_comment
  将样本页面的网址手工拷入Theme Editor 工作台的页面地址 输入栏 
  如果前面设置了反向选择模式,需要关闭这种模式 
  因为关闭了反向选择模式,点击网页上的"评价详情 "标签将激发浏览器从淘宝服务器上下载用户评论信息并显示在网页上。一直等待评论信息显示全了再进行下面的步骤 
  选择菜单项"文件 "-〉"刷新DOM ",刷新DOM树。此时设置反向选择模式并点击网页上的评论不会遇到图1显示的"Cannot find the node"错误。 
  
  图5  图5显示如下步骤:  为了采集多条评论信息,采用样例复制品映射 方法,详细说明参见《采集当当百货价格以建立比价系统》
  为了能够在网页上精确定位,定义了一个嵌套的整理箱,有两层容器节点,分别是评论 和list ,并且为顶层容器节点作FreeFormat映射,这并不是必须的,在2.1.1节已经详细说明了为什么要这么做。 
  
  图6  图6显示怎样设置AJAX采集模式,即勾选菜单项"延长模式 "和"积极模式 ",详细参见《卓越网翻页抓取不了怎么办》 
  
  图7  图7显示如下步骤:  在Clue Editor 工作台上创建一条线索 
  设置成线内线索类型 
  设置记号线索类型,网页上的"下一页 "字样作为记号。 
  进行线索映射 
  进行记号映射 
  将记号识别模式设置成包含模式
  编辑记号值,将"下一页>> "中的两个大于号删除 
  
  图8  MetaSeeker采用的FreeFormat技术能够提高采集规则的适应性,所以,即使没有显式作FreeFormat映 射,MetaStudio缺省情况下计算采集规则时也会自动选择FreeFormat标志,在网页上存在很多@class和@id属性,它们都有可能被自 动选用,但是,有时候自动选用的不太合适,需要手工调整,一般遵从就近原则 。手工调整方法是设置节点定位首选项。图8显示设置步骤:  选择菜单"配置 "-〉"首选项 "。 
  在首选项弹出对话框中选择"线索定位 "标签 
  选择"偏好class ",就会优选@class='show-rate-table',而不选@id='reviews',前者更靠近表示翻页区的DOM节点HTML TFOOT 
  注释 :如果不采用就近原则,而是采用缺省设置,MetaStudio会自动选择@id='reviews',实测发现有时候翻页不成功,很 有可能网页的动态修改部分的结构有变化,如果不就近选择的话,可能在节点@id='reviews'和@class='show-rate-table' 之间动态插入了其它HTML DOM节点,造成定位失败。如果采用就近原则,动态插入其它DOM节点的几率大大降低。 
  至此,两个信息结构都定义完了,上载后可供DataScraper使用。  如果手工执行批量采集任务,在DataScraper的主题列表中只对主题名demo_TB_detail 执行采集操作即可,DataScraper会自动从第一个主题导航到第二个主题。参看《批量采集当当网价格》 介绍的操作方法。自动周期性批量采集方法一样,只需为第一个主题指定周期性采集指令即可。  如果想修改以前定义的信息结构,例如,目标网页结构变了需要修改采集规则,需要先将其加载到MetaStudio的工作台上。第一个信息结构是普通的网页采集信息结构,加载方法没有什么不同。第二个信息结构用于采集AJAX显示的内容,需要执行"后续分析 "操作。 
  
  图9  图9显示demo_TB_comment 的加载过程:  在Schema List 工作台上选中待加载的信息结构,并点击鼠标右键,弹出菜单 
  选择菜单项"加载 ",开始加载信息结构 
  能够看到网页已经完全加载到内嵌浏览器上了,而且弹出一个对话框,提示用户进行后续分析
  关闭反向选择模式 
  在网页上点击"评价详情 ",激发网页从淘宝服务器上下载并显示用户评论信息 
  等看到评论信息已经显示了,选择菜单"文件 "-〉"后续分析 " 
  注意 :MetaStudio有个缺陷:如果两个信息结构使用相同的样本页面,而且第一个信息结构已经加载到工作台上了,然后加载第二个,则MetaStudio的加载过程会一直等待。本例这两个信息结构就符合这个条件,如果demo_TB_detail 已经加载到工作台了,现在需要看demo_TB_comment , 加载会一直处于等待状态。从内部实现原理角度进行分析,MetaStudio是在等待第二个样本页面加载到浏览器上,事实上第二个样本页面与第一个相同从 而已经在浏览器上了,MetaStudio却不知道,所以,一直等下去。该bug将在以后版本修改。当前,需要避开这个bug,可以重新运行 MetaStudio再加载第二个信息结构。 
分享到:
评论

相关推荐

    淘宝宝贝采集专家1.1绿色免费版

    淘宝宝贝采集专家是一款专门针对淘宝卖家制作的淘宝店铺宝贝图片采集工具,... 淘宝宝贝采集专家使用方法: 1、复制要采集的宝贝链接 2、提取宝贝信息 3、点击一键采集 4、采集完成 更新日志: 1、同步最新淘宝搜索选项

    淘宝宝贝采集软件

    淘宝宝贝采集软件,可以采集宝贝和天猫的宝贝

    易语言淘宝店铺旺旺信息采集

    易语言淘宝店铺旺旺信息采集源码,淘宝店铺旺旺信息采集,获取宝贝信息

    (可下载属性)淘宝店铺复制下载专家 v3.71 (采集淘宝宝贝)破解版

    (可下载属性)淘宝店铺复制下载专家 v3.71 (采集淘宝宝贝)破解版

    淘宝链接采集器

    基于python语言 开发的 淘宝指定关键字采集商品链接。便利每个搜索页面,采集页面中所有商品信息

    采集淘宝评论

    淘宝评论采集器是一款自动采集淘宝商品的评论数据和用户昵称的工具,可以自定义组合模板,可以设置过滤等采集参数,内置按关键词和按店铺采集宝贝地址的功能。 水淼淘宝评论采集器功能特点:第一,支持引用 买家、...

    淘宝店铺宝贝描述模板

    淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板淘宝店铺宝贝描述模板

    淘宝评论采集原创利器2.5

    淘宝评论采集原创利器是一个自动采集淘宝商品评论和买家昵称的工具。支持引用买家、评论、日期、尺码、颜色、标题等参数自由组合为模板,可以设置过滤等采集参数,内置按关键词和按店铺采集宝贝地址的功能。 软件...

    淘宝店铺宝贝批量下载复制大师

    可以采集任意淘宝店的宝贝,包括描述,图片,标题,价格,属性等信息,直接生成淘宝助理支持文件。简单设置就可以上架销售。软件功能列表 1.支持下载任意淘宝普通店铺旺铺商城、分类地址、任意搜索链接、单个宝贝...

    天音淘宝店铺宝贝批量下载复制大师 v3.06.zip

    可以采集任意淘宝店的宝贝,包括描述,图片,标题,价格,属性等信息,直接生成淘宝(拍拍、有啊)助理支持文件。简单设置就可以上架销售。 天音淘宝店铺宝贝批量下载复制大师功能: 1.支持下载任意淘宝店铺(普通...

    获取淘宝宝贝信息_更新1

    更新后的获取淘宝宝贝信息,可以模拟按键发布宝贝

    diy 采集淘宝 tmall 产品详情信息

    diy 采集淘宝 tmall 产品详情信息 价格 产品名称 产品图集

    淘宝宝贝采集器

    是免费 的淘宝卖家资源下载软件,很好的 支持各种下载

    大气商城整店采集单品采集淘宝客红色版

    大气商城整店采集单品采集淘宝客红色版 源码 自动采集 傻瓜式操作 方便快捷 淘宝客

    淘宝客程序全自动采集版源码 淘宝客自动采集软件

    基本上可以采集大部分的淘宝和天猫商品,且可以采集折扣价和销量。 2、独有的淘点金KindEditor编辑器插件,方便添加文章的时候,随时插入淘点金标签代码。 3、通过淘点金把普通淘宝商品、店铺链接转换成佣金链接。 4...

    从阿里巴巴导出下载采集淘宝数据包生成工具

    从阿里巴巴导出下载采集淘宝数据包工具 使用该软件,可以将阿里巴巴的...其中可以自动对应阿里巴巴和淘宝之间的分类,智能匹配销售组合、宝贝属性、采集图片等一些列功能,仅在一键之中。可谓淘宝助理工具中的神器!

    PHP实现采集抓取淘宝网单个商品信息

    主要介绍了PHP实现采集抓取淘宝网单个商品信息,本文是一种实现思路,使用file_get_contents函数实现,并给出了采集正则,需要的朋友可以参考下

    淘精灵淘宝宝贝销售记录采集分析器 v2.2.rar

    · 软件支持多个宝贝同时采集,采集结果分别保存,文件名为淘宝商品ID,如果勾选了自动保存到文本,则保存到软件目录下名称为结果的文件夹; · 时间区间自由选择,用户可以选取一个日期到现在的区间来进行销售记录...

    采集阿里巴巴 淘宝信息模块

    采集阿里巴巴 淘宝信息模块采集阿里巴巴 淘宝信息模块

    淘宝宝贝描述代码

    淘宝 宝贝描述 代码 所以 关于淘宝的模版 记住我的选择

Global site tag (gtag.js) - Google Analytics