新浪微博搜索数据抓取时,一个页面抓出来的微博会有很多重复的,如何避免这个现象?
哪个新浪微博页面?页面上的内容本来就是重复的吗?如果本来就是重复的,需要在入库的时候进行过滤。如果页面上不重复,但是抓取到的是重复的,那么应该是抓取规则定义的不好
是新浪微博高级搜索后搜索出来的页面,页面上不是重复的。可以麻烦看下哪里出了问题吗?主题名是:pursum_test3 谢谢了!
我用MetaStudio加载测试了这个信息结构,加载有点问题。在新浪微博列表页上,一条消息可能会被转发过,被转发的消息用灰色背景显示。如果要抓取最新消息,而不抓取被转发消息,如果定义的信息结构希望抓取消息发布时间、转发数和评论数,如果定义抓取规则时不小心,会将被转发的消息的发布时间当成转发者的时间,转发数和评论也会出这个问题,而且,定义好的信息结构要重新用MetaStudio加载和测试时,按MAP按钮会出现错误提示:
Error: The content and FreeFormat nodes are not on the same DOM branch
解决方案有两种: 1,用自定义的XPath表达式,更准确地定位发布时间、转发数和评论数。用FreeFormat映射还不够,因为被转发的发布时间、转发数和评论数的FreeFormat标志与转发者的一样,区分不开
2,抓取微博列表页的时候,不抓取这些信息,而且采用层级抓取,第二级进入每个微博消息页面去抓取这些信息
哪个新浪微博页面?
哪个新浪微博页面?页面上的内容本来就是重复的吗?如果本来就是重复的,需要在入库的时候进行过滤。如果页面上不重复,但是抓取到的是重复的,那么应该是抓取规则定义的不好
是新浪微博高级搜索
是新浪微博高级搜索后搜索出来的页面,页面上不是重复的。可以麻烦看下哪里出了问题吗?主题名是:pursum_test3 谢谢了!
新浪微博抓取规则
我用MetaStudio加载测试了这个信息结构,加载有点问题。在新浪微博列表页上,一条消息可能会被转发过,被转发的消息用灰色背景显示。如果要抓取最新消息,而不抓取被转发消息,如果定义的信息结构希望抓取消息发布时间、转发数和评论数,如果定义抓取规则时不小心,会将被转发的消息的发布时间当成转发者的时间,转发数和评论也会出这个问题,而且,定义好的信息结构要重新用MetaStudio加载和测试时,按MAP按钮会出现错误提示:
Error: The content and FreeFormat nodes are not on the same DOM branch
解决方案有两种:
1,用自定义的XPath表达式,更准确地定位发布时间、转发数和评论数。用FreeFormat映射还不够,因为被转发的发布时间、转发数和评论数的FreeFormat标志与转发者的一样,区分不开
2,抓取微博列表页的时候,不抓取这些信息,而且采用层级抓取,第二级进入每个微博消息页面去抓取这些信息