从heritrix抓取中排除除text/html之外的所有内容,可以通过配置heritrix的过滤规则来实现。
具体步骤如下:
crawler-beans.cxml
或crawler-beans.cxml.gz
。<bean id="decideRules" class="org.archive.modules.deciderules.DecideRuleSequence">
,这是决策规则的配置部分。<bean id="decideRules" class="org.archive.modules.deciderules.DecideRuleSequence">
标签内部,找到<bean id="decideRuleAcceptOnContentTypeMatch" class="org.archive.modules.deciderules.ContentTypeMatchesListRegExpDecideRule">
,这是根据内容类型匹配的规则。<bean id="decideRuleAcceptOnContentTypeMatch" class="org.archive.modules.deciderules.ContentTypeMatchesListRegExpDecideRule">
标签内部,找到<property name="listLogicalOr" value="true"/>
,将其改为false
,表示后续的规则是与逻辑关系。<bean id="decideRuleAcceptOnContentTypeMatch" class="org.archive.modules.deciderules.ContentTypeMatchesListRegExpDecideRule">
标签内部,找到<property name="regexpList">
,这是内容类型匹配的正则表达式列表。<property name="regexpList">
标签内部,添加一个<value>
标签,填入要排除的内容类型的正则表达式。例如,要排除所有非text/html类型的内容,可以添加<value>^(?!text/html).*$</value>
。这样配置后,heritrix在抓取网页时会根据内容类型进行过滤,排除除text/html之外的所有内容。
注意:以上步骤是基于heritrix 3.x版本的配置,不同版本的heritrix可能有细微差别,请根据实际情况进行调整。
推荐的腾讯云相关产品:腾讯云CDN(内容分发网络),详情请参考腾讯云CDN产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云