そのため、Python を使用して Web ページの解析を行っており、完全な Web アドレスを 2 つの部分に分割したいと考えています。アドレスhttp://www.stackoverflow.com/questions/askがあるとします。プロトコルとドメイン (例: http://www.stackoverflow.com ) とパス (例: /questions/ask) が必要です。これはいくつかの正規表現で解決できるかもしれないと考えましたが、私はそれがあまり得意ではありません。助言がありますか?
3 に答える
13
ダンは正しいです: urlparse はあなたの友達です:
>>> from urlparse import urlparse
>>>
>>> parts = urlparse("http://www.stackoverflow.com/questions/ask")
>>> parts.scheme + "://" + parts.netloc
'http://www.stackoverflow.com'
>>> parts.path
'/questions/ask'
注:Python 3ではfrom urllib.parse import urlparse
于 2008-11-13T03:37:48.487 に答える
7
Python urlparse モジュールを使用します。
https://docs.python.org/library/urlparse.html
このような明確に定義され、よく旅された問題については、独自の正規表現はおろか、独自のコードを書くことも気にしないでください。彼らはあまりにも多くの問題を引き起こします;-)。
于 2008-11-13T03:13:00.877 に答える
-1
import re
url = "http://stackoverflow.com/questions/ask"
protocol, domain = re.match(r"(http://[^/]*)(.*)", url).groups()
于 2008-11-13T03:12:46.103 に答える