0
私は与えられたWebページ内のすべてのURLと一致するように、このパターンを使用します。パイソン - 正規表現のページのソースコード内のURLにマッチする
import re
source = """
<p>https://example.com</p>
... some code
<font color="E80000">https://example.com</font></a>
"""
urls = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[[email protected]&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', source)
これはかなりよく、今まで私のために働いています。私は時にはそれが正確なURLに一致しないことがわかった。例のようにURLはhttps://example.com</p>
とhttps://example.com</font></a>
のようにマッチしますが、正規表現の問題点はわかりません。私は別のスタックの質問からこのコードを取った。
、これを試してみてください手紙など'[$ -_ @。&+]'を '[ - $ _ @。&+]'に置き換えてください。 –
このリンクを参照してくださいhttp://stackoverflow.com/questions/499345/regular-expression-to-extract-url-from-an-html-link –
これもチェックできますhttp://stackoverflow.com/questions/6883049/regex-to-find-url-in-pythonの文字列 –