发帖信息爬取不了

搜狐的实在弄不下来,跟老师说明后转爬新浪的了。我定义的主题是“亲子桃花潭”,下把每个贴子的链接爬下来,因为要分别爬发帖和回帖(因树状结构发、回帖结构不一样)所以定义了两个线索“亲子桃花潭发帖lj、亲子桃花潭回帖lj,”现在的问题是我可把回帖情况爬取下来,但是发帖情况只能把页面网址爬下来,其他的什么也没有,我实在找不出有什么设置的映射的问题,因为我用单一页面实验的时候是可以的……拜请Fuller帮我看下我定义的“亲子桃花潭发帖lj”的结构到底是哪里错了

搜狐社区论坛抓取问题

您上次问的搜狐论坛抓取问题其实很好解决,可以参看我修改后的信息结构:我家理财2_test

国内的论坛是比较好抓的,新浪论坛上面的发帖和跟贴都是相同的结构,完全可以用一个信息结构将所有内容抓取下来。可以参看信息结构:亲子桃花潭发帖lj_test

新浪论坛最容易造成抓取障碍的是:在HTML上,本来每个帖子都有相同结构,但是,每个帖子都有一个唯一编号,这个编号显示在html 节点的@id属性中。MetaStudio在自动生成抓取规则是,会自动使用@class, @id等,以提高定位精度,但是,如果不加干预,可能会自动使用含有贴子编号的@id属性,这样,就无法抓取多个跟贴了。

所以,在做数据映射的时候,应该合理选择FreeFormat映射,或者通过MetaStudio的定位首选项设置功能,修改MetaStudio自动选用FreeFormat标志的规则。修改方法是在Bucket Editor工作台上,在整理箱结构上方有个tab标签,显示“FreeFormat”,点击鼠标右键可以看到相应的弹出菜单。

还有一种更灵活的方式,采用自定义XPath规则,可以避开帖子id,在这里就不多说了

搜狐论坛依旧不能翻页

我把您定义的结构加载下来,然后改了个名字,发现还是不能翻页。。。无语了,亲

主题名要改对

首先是Theme Editor工作台上的主题名,然后是Clue Editor上的主题名,不能用我的名字,因为你没有修改权限。

翻页抓取我都测试过

FreeFormat映射是id的值

我仔细对照了您定义的亲子桃花潭*和我做的区别,我映射过去显示的是id列的值,而不是class列的,不知道这个与我爬不了内容有关吗?

还有,要是有关的话,我怎么设置才能让它映射class的值呢?

设置定位首选项

MetaSeeker会自动选择@class或者@id作为定位参照。通常首选@id,很多论坛,每个帖子都有唯一id,这样的抓取规则就不适应其它帖子。可以手工设置定位首选项。有三种首选项:

1,全局:MetaStudio的菜单“配置”-〉“首选项”,打开的窗口有两个tab,选择“全局定位”
2,线索定位首选项:MetaStudio的菜单“配置”-〉“首选项”,打开的窗口有两个tab,选择“线索定位”
3,信息属性定位首选项:在Bucket Editor工作台上,在整理箱结构窗口上方有个tab,显示“FreeFormat”,点击鼠标右键,选择“首选项”菜单,为这个整理箱设置首选项

全局首选项的优先级最低

可以了

谢谢Fuller的悉心指导,终于成功!