>  기사  >  백엔드 개발  >  Python 요청 API 호출 시 \"403 Forbidden\" 오류가 발생하는 이유는 무엇입니까?

Python 요청 API 호출 시 \"403 Forbidden\" 오류가 발생하는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-02 03:19:30584검색

Why Am I Getting a

Python 요청 API 호출에서 "403 Forbidden" 오류 문제 해결

Python의 요청 모듈을 사용하여 웹사이트에서 데이터를 추출하려고 하면 그렇지 않습니다. "403 Forbidden" 오류가 발생하는 경우는 드뭅니다. 이 오류는 서버가 액세스 제한으로 인해 요청 이행을 거부하고 있음을 나타냅니다.

다음 코드 조각을 고려하세요.

<code class="python">import requests

url = 'http://worldagnetwork.com/'
result = requests.get(url)
print(result.content.decode())</code>

이 코드를 실행하면 다음 오류가 반환될 수 있습니다.

<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx</center>
</body>
</html>

이 경우 문제는 웹사이트가 적절한 User-Agent 헤더가 없는 GET 요청을 거부한다는 사실에서 발생합니다. 브라우저(예: Chrome)에서 페이지를 방문하고 네트워크 트래픽을 검사하면 브라우저에서 사용하는 User-Agent를 확인할 수 있습니다.

오류를 해결하려면 User-Agent 헤더를 추가해야 합니다. 요청 호출:

<code class="python">import requests

url = 'http://worldagnetwork.com/'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'}
result = requests.get(url, headers=headers)
print(result.content.decode())</code>

User-Agent 헤더가 추가되면 이제 요청이 웹사이트의 HTML 콘텐츠를 구문 분석하는 데 성공해야 합니다.

위 내용은 Python 요청 API 호출 시 \"403 Forbidden\" 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.