关于新浪微博滚屏抓取

抓取新浪微博数据时,定义抓取规则时只使用了滚屏选项。
但是在抓取的时候发现并没有滚屏,抓取第一页需要用鼠标向下拖动页面才开始加载内容,即使加载完后,也不能翻页,请问这是怎么回事?
还有,那个More Page和Delay Radio该如何根据实际页面的加载情况设置(教程上没有讲透)?新浪微博的自动滚屏功能只加载了3次,每次15个item。需要加载完成之后,后面的翻页链接才能出现,会不会是这个原因导致不能翻页?
我的工程是Sina_Tweet_Blog,麻烦帮我看一下,谢谢~~

新浪滚屏抓取

More page设置成>0,就打开了滚屏功能,Delay Ratio不要改变。More pages设置多少要观察一下,以前我们都设置成15-20去抓新浪名人微博。由于这个功能用的很少,会用的人不多,我们最近也在跟踪监视新浪微博,今天发现滚屏不了,研发工程师检查了一下程序,发现最近由于Firefox升级过快,MetaSeeker快速跟随推出新版本,导致滚屏功能测试不够充分,含有bug,这个bug已经修改了,请下载最新的版本。注意,版本号没有升高,仍然是4.11.7,而是build号升高了。

还有一点要注意,一定要打开全屏显示,让显示区域尽量大,以减少滚屏次数。

另外,只有打开了AJAX抓取选项(延长模式和积极模式),滚屏功能才有效

滚屏设置成功后会是什么效果

滚屏设置成果后,抓取的页面右边的滚动条会自动往下滚动么?
我用和firefox7.0.1配套的版本号为4.11.7的插件,按照你的描述进行了相应的设置,但依然没有发现滚屏现象。
麻烦帮忙看看:Sina_Tweet_Blog

抓取新浪微博尽量使用FreeFormat映射

所有微博网页的结构很规整,html网页上大部分信息都有class或者id属性,可以作为FreeFormat进行映射,以提高定位的精度和适应网页的变化。

至少一个信息属性设置key特性,否则无法进行AJAX抓取。不设置key特性只能用“普通模式”进行抓取,不用用来抓AJAX网页。

先不设置滚屏抓取,如果能够抓下内容来再打开滚屏

问题依然存在

在规则定义的时候按照你的解释,重要的节点都设置了FreeFormat属性,对至少一个节点设置了Key属性。并且为了保证后面翻页链接被加载到,最后还专门额外建立了一个节点用来映射翻页导航链接所在的div,并将其设置为Key属性。但这样依然不成功。

关键的问题在于:无论我怎么设置,每次实验都没有发现页面内容通过ajax加载的现象出现。是不是还有那些细节问题我忽略了?

另外还有一个细节问题想问:在metaseeker规则定义的时候,我是通过手工把页面往下三次,等所谓内容都加载完,翻页导航链接出现后,然后刷新DOM之后才开始进行的规则定义。因为不这么做,翻页链接是不会出现的,就无法定义翻页所有的clue了。这个有没有一定的影响?

在信息属性的叶子节点设置key特性

要在叶子节点上设置key特性。

你这个信息结构加载不成功,哪个地方映射不对。我建议:
1)先以bbs等普通网站作为练习对象
2)再以微博作为练习对象,先定义一个简单的信息结构试试

微博上的内容很多,通常需要定义很复杂的信息结构。但是,调试难度很大。

是否阅读了本网站的速成手册?该手册一步步讲解使用技巧

加载不成功的原因是翻页链接是通过ajax加载过来的

加载不成功的原因是新浪微博的翻页链接是通过ajax加载过来的,在规则定义的时候是等该翻页链接加载完全才定义的。
所以,在重新加载该工程的时候,一开始点“后续分析”就会提示加载不成功,因为页底的翻页链接此时没有通过ajax加载过来。这个时候需要手动拖动metaseeker下面浏览器窗口里的页面,等翻页链接加载完全之后,再依次点击“刷新DOM”和“后续分析”,这样才能加载成功。

所以,会不会是这个原因导致不能滚动呢?

滚动和翻页是两个概念

滚动是指网页很长,一屏显示不完,需要拖着右侧滚动条看下面的内容。

如果打开滚动选项,你就能观察到DataScraper自动拖动滚动条。最好先将DataScraper窗口放到最大。

是否生成了抓取结果?无论是否成功滚动还是成功翻页,都应该至少有一个结果文件,否则说明信息结构不对。

key特性一定要设置在叶子节点上,设置在容器节点上没有用。

如果翻页是AJAX加载的,那么滚动参数设置大一些,这样会有足够的延迟加载翻页需要的AJAX代码,否则确实翻不了页

英文版可以滚屏但中文版不可以

我把中文版卸载了改用英文版的,发现滚屏成功了。这可能是由于你们没有把中文版的程序漏洞查到的缘故。麻烦再检查下哈~~

中文版的bug已经修改

非常感谢您对我们的产品耐心和细致的测试,确实是我们的疏忽,中文版的bug没有修改彻底。您的测试给我们帮了大忙,让我们能够及早发现错误,最新版本已经上载到服务器上。谢谢!