何が起きた?
pdfファイル自動ダウンロードのロジックを作ろうとしたときに、保存のファイル名をちゃんと指定しているはずなのに表記のエラーで動かなくなるということが起きました。
原因(結論)
下記のようにファイル名で使用するつもりのものをディレクトリ作成で指定してしまっていたからでした。
エラーが出る記述
import urllib
import os
# ファイル名設定
filename = xxx.pdf
# 保存先のディレクトリを自動で用意
os.makedirs('/Users/user/python_test/resources/' + filename) # ←ここで間違ってファイル名でディレクトリを作成している
# 保存する場所とファイル名の指定
savepath = "/Users/user/python_test/resources/" + filename
# pdfのurl
url = "https://xxx.com/xxx.pdf"
# 取得して保存
urllib.request.urlretrieve(url, savepath)
解決方法
os.makedirs
を正しく行うことでエラーが解消できました。
正しい記述
import urllib
import os
# ファイル名設定
filename = xxx.pdf
# 保存先のディレクトリを自動で用意
os.makedirs('/Users/user/python_test/resources/') # ←正しいディレクトリ名を指定した
# 保存する場所とファイル名の指定
savepath = "/Users/user/python_test/resources/" + filename
# pdfのurl
url = "https://xxx.com/xxx.pdf"
# 取得して保存
urllib.request.urlretrieve(url, savepath)