2015-09-15 94 views
1

這是我的正則表達式:如何使用scrapy re()選擇器?

".*\/(.*)\?ref" 

這是我的測試字符串:

/product/sam/go-with-me?ref=popular 

我可以得到:go-with-me
我曾嘗試在https://regex101.com/#python

但我不知道如何與scrapy寫, 它什麼也得不到

這裏是我的代碼:

for site in sites: 
    title = sel.css("a::text").re(r".*\/(.*)\?ref") 
    print title 
    break 
+0

你能分享包含所需鏈接的示例HTML代碼? (或分享網址到網頁) – alecxe

回答

0

這很難,沒有看到你真正的HTML的輸入數據說,但你可能只需要尋找到href屬性值,而不是文本:

for site in sites: 
    title = site.xpath(".//a/@href").re(r".*\/(.*)\?ref") 
    print title 
    break 
+0

你是對的。我太粗心了 – user2492364