私はPythonにまったく慣れていません。ドメイン名だけを残すようにURLのファイルを解析しようとしています。
ログファイルのURLの一部はhttp://で始まり、一部はwwwで始まります。一部は両方で始まります。
これは、http://の部分を取り除く私のコードの一部です。httpとwwwの両方を探すために何を追加する必要がありますか。両方を削除しますか?
line = re.findall(r'(https?://\S+)', line)
現在、コードを実行すると、http://のみが削除されます。コードを次のように変更した場合:
line = re.findall(r'(https?://www.\S+)', line)
両方で始まるドメインのみが影響を受けます。コードをより条件付きにする必要があります。TIA
編集...これが私の完全なコードです...
import re
import sys
from urlparse import urlparse
f = open(sys.argv[1], "r")
for line in f.readlines():
line = re.findall(r'(https?://\S+)', line)
if line:
parsed=urlparse(line[0])
print parsed.hostname
f.close()
元の投稿で正規表現と間違えました。それは確かにurlparseを使用しています。