Python 요청 라이브러리를 사용하여 리디렉션된 URL 검색
웹 스크래핑 및 자동화 영역에서는 발생하는 리디렉션을 추적하는 것이 필요한 경우가 많습니다. 웹페이지에 접속할 때. Python 요청 라이브러리는 리디렉션 탐색 기능을 포함하여 HTTP 요청 관리를 위한 포괄적인 기능을 제공합니다. 이 문서의 목적은 커뮤니티에서 제기된 쿼리를 해결하면서 요청 라이브러리를 사용하여 리디렉션된 URL을 검색하는 방법을 명확히 하는 것입니다.
문제:
스크립트 내에서 허용_리디렉션 =True 플래그는 자동으로 리디렉션을 따르도록 설정됩니다. 그러나 사용자는 요청이 리디렉션되는 최종 URL을 확인하려고 합니다. 질문이 생깁니다. 이 정보를 프로그래밍 방식으로 어떻게 얻을 수 있습니까?
해결책:
해결책은 요청에서 제공하는 response.history 속성을 활용하는 데 있습니다. 이 속성은 최종 목적지로 이어지는 전체 리디렉션 경로를 포함하는 응답 목록을 저장합니다. 최종 URL에 액세스하려면 response.url 속성을 사용할 수 있습니다.
다음은 프로세스를 보여주는 코드 조각입니다.
response = requests.get(someurl) if response.history: print("Request was redirected") for resp in response.history: print(resp.status_code, resp.url) print("Final destination:") print(response.status_code, response.url) else: print("Request was not redirected")
데모:
다양한 작업을 수행하도록 구성된 웹사이트에 요청이 이루어지는 다음 예를 생각해 보세요. 리디렉션:
import requests response = requests.get('http://httpbin.org/redirect/3') for resp in response.history: print(resp.status_code, resp.url) print(response.status_code, response.url)
출력:
302 http://httpbin.org/redirect/3 302 http://httpbin.org/redirect/2 302 http://httpbin.org/redirect/1 200 http://httpbin.org/get
출력에서 알 수 있듯이 코드는 최종 대상뿐만 아니라 각 리디렉션의 상태 코드와 URL을 성공적으로 기록합니다.
위 내용은 Python 요청 라이브러리를 사용하여 리디렉션된 URL을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!