Scrapy SgmlLinkExtractor如何使用正则表达式定义规则

时间:2016-09-18 11:36:47

标签: python regex scrapy

我有一个像http://www.example.com/kaufen/105975478

这样的链接

我只想允许在网址中包含“/ kaufen /”并且在网址末尾包含9位整数的链接。

我设法只允许包含“/ kaufen /”的链接和以下allow语句:

allow=('/kaufen/', )

如何扩展allow语句,使其仅跟随末尾有9位数字的链接?

2 个答案:

答案 0 :(得分:2)

您可以使用\/kaufen\/[0-9]{9}

  • \/kaufen\/表示/ kaufen / litteraly
  • [0-9]{9}表示9个数字字符

https://regex101.com/r/tH5pC7/1



var re = /\/kaufen\/[0-9]{9}/gi; 
var str = 'http://www.homegate.ch/kaufen/105975478';
var m;
 
while ((m = re.exec(str)) !== null) {
    if (m.index === re.lastIndex) {
        re.lastIndex++;
    }
    // View your result using the m-variable.
    console.log(m[0]);
}




答案 1 :(得分:1)

您可以使用:

allow=(r'kaufen/\d+$')