Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

urljoinでURL文字列の細工をする

urljoinはURL文字列を細工する関数です。
同一ドメイン上のページを行ったり来たりする用途なんかには向いてるかも知れませんね。

公式リファレンスでは以下のように紹介されています。

“基底 URL”(base)と別のURL(url)を組み合わせて、完全な URL (“絶対 URL”) を構成します。

実際のところ

ParseResultで言う処の、pathに相当する部分を差し替えることができます。

from urllib.parse import urljoin

url = "https://ja.wikipedia.org/wiki/宇奈月温泉"
res2 = urljoin(url, "/wiki/ファイル:Pcs34560_IMG4098.JPG")

print(url)
print(res2)

実行してみるとこんな感じ

$ python url.py 
https://ja.wikipedia.org/wiki/宇奈月温泉
https://ja.wikipedia.org/wiki/ファイル:Pcs34560_IMG4098.JPG