首頁  >  問答  >  主體

python - 網頁title中包含換行,如何用正規表示式擷取出來?

在用python做CSDN的網頁爬蟲,在爬取網頁title時,我一直用的正規表示式(?<=\<title\>). ?(?=\< )在CSDN中用不了了,去CSDN源碼一看,title換行顯示了

所以導致原來的正規表示式無法使用,那麼,問題來了,像這樣網頁title中包含換行,如何用正規表示式提取出來呢?

PS:

  1. 不想用xpath或beautifulsoup的方法,只需要正規哦

  2. #CSDN本身有反爬蟲機制,我並不是因為這隻反爬蟲而爬不到title的哦

謝謝大家

參考@caimaoy 的方法,我將正規表示式改為(?<=\<title\>)(?:.|\n) ?(?=\<)後,title完美提取。
再次感謝大家。

女神的闺蜜爱上我女神的闺蜜爱上我2649 天前922

全部回覆(2)我來回復

  • 仅有的幸福

    仅有的幸福2017-06-22 11:53:43

    1. re.M 多行模式

    2. 自己寫多行配對 http://python3-cookbook.readt...

    回覆
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-22 11:53:43

    表達式那邊加個flag

    tite = '......'
    print(re.findall('(?<=\<title\>).+?(?=\<)', title, re.S))

    回覆
    0
  • 取消回覆