>백엔드 개발 >파이썬 튜토리얼 >Python의 요청 모듈을 사용하여 웹 사이트에 성공적으로 로그인하려면 어떻게 해야 합니까?

Python의 요청 모듈을 사용하여 웹 사이트에 성공적으로 로그인하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-04 20:50:121036검색

How Can I Successfully Log into a Website Using Python's Requests Module?

Python 요청을 사용하여 웹사이트에 로그인: 쿠키 및 HTTP 인증

문제:

쿠키 처리 문제로 인해 사용자가 Python의 요청 모듈을 사용하여 웹사이트에 로그인할 수 없습니다. 코드가 request.post를 활용하지만 잘못된 결과를 생성합니다.

해결책:

HTTP 인증과 쿠키

HTTP 인증 HTTP 헤더의 일부로 사용자의 자격 증명을 직접 보내는 것이 포함됩니다. 반면, 쿠키는 클라이언트의 컴퓨터에 정보를 저장하여 서버가 상태를 유지할 수 있도록 해줍니다.

올바른 쿠키 사용

제공된 코드에서 사용자는 ck라는 사전을 요청하고 이를 요청에 인수로 전달했습니다. 단, 이 사전을 데이터 매개변수로 대신 전달해야 합니다.

수정된 코드

ck = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
r = requests.post(url, data=ck)

로그인 상태 유지

오랜 기간 동안 로그인 상태를 유지하려면 웹 세션을 보존해야 합니다. 이는 request.Session 클래스를 사용하여 달성할 수 있습니다. 기본적으로 Requests는 각 요청에 대해 새 세션 인스턴스를 생성합니다.

세션을 사용하는 제안 코드

with requests.Session() as session:
    login_data = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
    response = session.post(url, data=login_data)

    # Check login status. If successful, make subsequent requests using the same session
    if response.status_code == 200:
        safe_response = session.get('protected_url')
        print(safe_response.text)

위 내용은 Python의 요청 모듈을 사용하여 웹 사이트에 성공적으로 로그인하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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