我想抓取2013年1月1日之后上传的Techcrunch页面。网站遵循模式
http://www.techcrunch.com/YYYY/MM/DD
所以我的问题是如何在nutch中设置urlfilter中的正则表达式,以便我只能抓取我想要的页面。
+^http://www.techcrunch.com/2013/dd/dd/([a-z0-9\-A-Z]*\/)*
答案 0 :(得分:0)
我不知道荷兰,但你会尝试:
+^http://www.techcrunch.com/2013/[0-9]{2}/[0-9]{2}.*$
或
+^http://www.techcrunch.com/2013/[0-9]+/[0-9]+.*$
答案 1 :(得分:0)
以下表达式将匹配您需要的网址:
没有群组
http:\/\/www.techcrunch.com\/\d{4}\/\d{2}\/\d{2}\/\w+
使用群组
http:\/\/www.techcrunch.com\/(\d{4})\/(\d{2})\/(\d{2})\/(\w+)
我没有放置锚点(^$
),但如果你需要它们进行过滤,你可以把它们放进去。
尝试看看是否有效。
我不知道nutch是如何工作的,但是有关你的正则表达式的一些建议可能适用:regexp中的/
应该被转义; dd
部分应为\d\d
,因此它们匹配两位数。
关于设置正则表达式,请查看this answer以查看它是否对您有所帮助。