我按照《翻页抓取当当网价格数据》做了几个翻页抓取的,发现基本上都只能取到每个页面内一部分的价格信息,不知道是为什么?我的信息结构名是hxf-安娜苏。麻烦fuller帮忙看一下,谢谢
这个网页的每个产品信息的排版不一样,例如,有的有两个中文名,有的只有一个,另外,在HTML DOM上产品名放的位置也不一样。DataScraper抓取时主要依赖DOM节点的位置进行定位,另外,还会根据FreeFormat标志,本网页DOM节点定位有变化,中英文产品名又是用相同的FreeFormat标志:@class="list_product_name",所以,定义抓取规则比较麻烦。需要采用自定义XPath或者XSLT规则。
我在做结构的时候也发现了,还以为能够忽略呢,看来还得学习XPath或者XSLT规则。这两个东西那个好用啊,fuller帮忙推荐一下?
MetaStudio上可以自定义XPath和XSLT,在本网站搜索“自定义XPath”能够找到一些案例。XPath比较容易使用,但是XSLT就很难了。通常用自定义方法做规则要花很多调试时间,我们自己都尽量避免使用。
今天没有更多时间研究了,明天继续
抓取不全的原因
这个网页的每个产品信息的排版不一样,例如,有的有两个中文名,有的只有一个,另外,在HTML DOM上产品名放的位置也不一样。DataScraper抓取时主要依赖DOM节点的位置进行定位,另外,还会根据FreeFormat标志,本网页DOM节点定位有变化,中英文产品名又是用相同的FreeFormat标志:@class="list_product_name",所以,定义抓取规则比较麻烦。需要采用自定义XPath或者XSLT规则。
多谢了
我在做结构的时候也发现了,还以为能够忽略呢,看来还得学习XPath或者XSLT规则。这两个东西那个好用啊,fuller帮忙推荐一下?
自定义XPath
MetaStudio上可以自定义XPath和XSLT,在本网站搜索“自定义XPath”能够找到一些案例。XPath比较容易使用,但是XSLT就很难了。通常用自定义方法做规则要花很多调试时间,我们自己都尽量避免使用。
是有点奇怪,我正在研究
今天没有更多时间研究了,明天继续