webmagic 爬蟲爬取某些網址URL的Regex過濾不生效

最近使用Webmagic進行過濾url的時候:如下格式的

page.addTargetRequests(page.getHtml().links().regex("(https://github\\.com/[\\w\\-]+/[\\w\\-]+)").all());
        page.addTargetRequests(page.getHtml().links().regex("(https://github\\.com/[\\w\\-])").all());

總是無法正確過濾到url。

各種問題處理。

跟中Pattern,match,find()。都沒找到問題所在。

2020年2月22日17:49:55今天大半天。處理。在偶然間,跟蹤到匹配的時候。

發現了regex的表達式,在匹配的地方,竟然發生了變化。

https://github\\.com/[\\w\\-] 這種在Webmagic中生效

但在SpringCloud環境中不生效。

調整格式後發現:https:\\/\\/github\\.com\\/[\\w\\-]

結果Debug的時候竟然出現了:https:\\\\/\\\\/github\\\\.com\\\\/[\\\\w\\\\-]

到此問題找到了。

所以regex增則表達式,前端存儲的時候,仍然按照正常的增則表達式格式來存儲。

java會默認進行處理一次。

所以URL的正則表達式格式應該存儲爲:https:\/\/github\.com\/[\w\-]+
        

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章