(수정) 파이썬 HTTPError: Forbidden 질문드립니다!
조회수 864회
같은 주소에서 다운 받아올려고 합니다. 수동으로 하기엔 너무 많아서 간단하겠지하고 코딩을 했는데
HTTPError: Forbidden
이라고 나오네요.
%06
없이 그냥 1, 2, 3, 4.. 증가했을 때는 잘 되더니 앞에 0이 필요해서 6자리 맞추려고 넣으니 자꾸만 에러가 나옵니다.
중간에 %6d
부분이 000001 .... 000100 까지 바뀌며 다운 받아오려고 합니다.
구글링해보니 헤더를 넣으래서 이렇게 하는게 맞는진 모르겠는데 일단 넣어봤습니다. 그런데도 Forbidden 에러가 나오네요.
아래는 2가지 방법으로 시도해본 소스코드입니다.
도와주세요.
import urllib.request
import requests
for i in range(100):
url = f'https://abcd.com/ABC/BC-{i:06d}.txt?key=QAWBCR-AAA=3'
req = urllib.request.Request(url, headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req).read()
text = response.decode('utf-8')
urllib.request.urlretrieve(text, "C:\Tempp\{}.ts".format(i))
import urllib.request
import requests
for i in range(100):
user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1;)'
headers = {'User-Agent' : user_agent, }
url = f'https://abcd.com/ABC/BC-{i:06d}.txt?key=QAWBCR-AAA=3'
secu_url = urllib.request.urlretrieve(url, "C:\Tempp\{}.ts".format(i))
request = urllib.request.Request(secu_url, None, headers)
1 답변
-
아래 코드 참고하세요.
In [13]: for i in range(10): print(f'https://abcd.com/ABC/BC-{i:06d}.txt?key=QAWBCR-AAA=3') https://abcd.com/ABC/BC-000000.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000001.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000002.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000003.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000004.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000005.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000006.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000007.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000008.txt?key=QAWBCR-AAA=3 https://abcd.com/ABC/BC-000009.txt?key=QAWBCR-AAA=3
댓글 입력