我认为需要帮助编译Heritrix决定规则,尽管我愿意接受Heritrix的其他建议:https://webarchive.jira.com/wiki/display/Heritrix/Configuring+Crawl+Scope+Using+DecideRules
我需要刮一整份的网站(在爬虫-beans.cxml种子列表),但不刮任何外部(场外)页面。呈现当前网站所需的任何外部资源都应该被下载,但是不要遵循任何链接到网站以外的页面--只有当前页面/域的资产。
例如,呈现页面所需的CDN内容可能托管在外部域(可能是AWS或Cloudflare),因此我需要下载该内容,并跟踪所有域上的链接,但是不要遵循指向当前域范围以外页面的任何链接。
发布于 2015-05-27 13:25:27
您可以使用3条决定规则:
ContentTypeNotMatchesRegexDecideRule;所以类似的事情:
<bean id="scope" class="org.archive.modules.deciderules.DecideRuleSequence">
<property name="rules">
<list>
<!-- Begin by REJECTing all... -->
<bean class="org.archive.modules.deciderules.RejectDecideRule" />
<bean class="org.archive.modules.deciderules.ContentTypeNotMatchesRegexDecideRule">
<property name="decision" value="ACCEPT"/>
<property name="regex" value="(?i)html|wml"/>
</bean>
<bean class="org.archive.modules.deciderules.surt.SurtPrefixedDecideRule">
<property name="decision" value="ACCEPT"/>
<property name="surtsSource">
<bean class="org.archive.spring.ConfigString">
<property name="value">
<value>
http://(org,yoursite,
</value>
</property>
</bean>
</property>
</bean>
<bean class="org.archive.modules.deciderules.surt.NotSurtPrefixedDecideRule">
<property name="decision" value="REJECT"/>
<property name="alsoCheckVia" value="true"/>
<property name="surtsSource">
<bean class="org.archive.spring.ConfigString">
<property name="value">
<value>
http://(org,yoursite,
</value>
</property>
</bean>
</property>
</bean>
</list>
</property>
</bean>https://stackoverflow.com/questions/30463262
复制相似问题