반응형
python을 통해 pdf파일을 다운받는 중 제목과 같은 에러가 발생하였습니다.
에러 발생코드
import urllib
from random import randint
# a는 pdf주소가 저장된 list / b는 pdf문서 이름이 저장된 list
for i, n in enumerate(tqdm_notebook(a)):
#random sleep
sleep(randint(1,10))
#주소를 통해 파일 다운로드
urllib.request.urlretrieve(n, "{}.pdf".format(b[i]))
발생이유
https://file.download.com?file=1440047203387.pdf&path=001&downFile=파일다운12해보자.pdf
위와 같은 url에서 파일다운12해보자 부분을 encoding할 수 없어 발생하는 에러입니다.
해결
urllib라이브러리 quote_plus를 이용하여 urlencoding를 진행하면 됩니다.

반응형
'언어 > Python' 카테고리의 다른 글
[Python] 'tqdm_notebook' object has no attribute 'delay' (0) | 2021.10.25 |
---|---|
[python] 공공데이터 포털 API사용 (0) | 2021.08.10 |
[Python] 'list' object has no attribute 'split' (0) | 2020.05.12 |
[Python] 리스트 안의 숫자를 문자로 변경하는방법 (0) | 2020.05.11 |
[Python] transport_encoding 오류 해결방법 (0) | 2017.11.18 |