网页上时而出现或消失的字段如何处理

在抓取微博信息时,有的含有转发信息即有相应的字段,有的没有转发信息即不含有相应的字段,将规则设置成抓取含有转发信息的时候,只是提取出了具有相应字段的微博,对于不含有相应字段的微博是否可以在相同抓取规则下设置成相应字段为空?该如何设置呢?

选择合适的样本页面定义抓取规则

选择一个信息最全的页面作为样本页面。时而有时而无的字段映射给一个信息属性,这个信息属性不要设置key特性。这样当遇到没有这些字段的时候,这个信息属性则为空

续问一个滚屏的问题

上面的问题进行了设置之后已经解决,非常感谢!
下面还有个问题,我将记号值设置为5时,只能抓取显示在第1和第5页上的信息,之间的内容均抓取不到,如何设置才能实现在指定页码之间的滚屏抓取呢?

翻页抓取要选择正确的记号

一般网页上用个“下一页”链接或者按钮,用于翻页,将“下一页”这个字符串作为记号。如果没有这个记号,可以使用相对线索映射方式。

如果搞不定,可以将网页地址帖出来,一起研究一下

续问

非常感谢您的回复!

我使用了相对线索映射的方式,但是我发现,在抓取的周期中,第一和第二页每次都抓取不到,而只是第三至第五页可以抓取到。我将当前节点设置为第一页、下一节点设为第五页。

另外还有一个问题,对于新浪微博中如何抓取“粉丝数”(这个粉丝数指的是光标位于头像或者昵称位置时显示处理的信息)呢?这个信息在反向定位时找不到相应的节点。

非常感谢!

样本页面是哪个

关于翻页问题,可以将样本页面帖出来看看。

新浪微博的粉丝数的抓取,最好从别的位置进行抓取,比如,点击这个头像进入到这个页面后,右上角有他的粉丝数。光标移动到头像上,一般是在网页的鼠标“悬浮”事件处理函数中显示的,不容易抓取,等我试试看。

续问

非常感谢您的回复!

请帮我看下主题为tx_keyword_lenovo的抓取规则,映射出的结果是,转发的内容与发布的内容是重复的,而且当不存在转发信息的时候,转发字段为什么还会显示呢?我并没有勾选key项。

没有找到这个主题

只看到tx_lenovo,但是,没有关于转发和评论的抓取。我估计你需要做以下FreeFormat映射,腾讯微博网页上有很多class,评论的@class='comt',转发的@class='relay',用FreeFormat映射可以确保精确抓取,应该能够解决你的问题。