본문 바로가기
ETC/Tip

파이썬(Python) Session Cookie Request 헤더(Header)에 집어넣기

by Guardy 2024. 10. 23.
728x90

파이썬으로 크롤링을 하다보면 requests의 Session의 쿠키(Cookie)를 새로운 Request의 헤더에 포함시켜야할 때가 있다.

request header

이럴때 사용할 수 있는 방법을 소개하려고 한다.

먼저 session.cookies.get_dict()으로 현재 세션의 쿠키를 딕셔너리 형태로 가져온다.

session.cookies.get_dict()

그 다음 그 쿠키들을 헤더의 Cookie 필드에 추가하기 위해 '; '.join([f'{name}={value}' for name, value in cookies.items()])로 변환한다.

'Cookie': '; '.join([f'{name}={value}' for name, value in cookies.items()])

마지막으로 새로운 request에 해당 쿠키를 포함시켜서 post 혹은 get을 날려주면 된다.

request.get(url,headers=headers)

 

최종 코드는 다음과 같다.

import requests

# 세션 생성
session = requests.Session()

url = 'https://www.tistory.com'

resp = session.get(url)

# 세션에서 쿠키 값을 헤더에 넣기 위해 준비
cookies = session.cookies.get_dict()

# 쿠키를 헤더에 추가
headers = {
    'Cookie': '; '.join([f'{name}={value}' for name, value in cookies.items()])
}


# 헤더를 포함하여 새로운 요청 보내기
response = requests.get(url, headers=headers)

# 응답 출력
print(response.status_code)
print(response.text)

 

도움이 되셨다면 공감과 댓글부탁드립니다.

728x90

'ETC > Tip' 카테고리의 다른 글

Window에 vue를 설치해보자  (0) 2021.09.05
sklearn 설치방법  (1) 2020.11.25
무료 로고(logo) 만들어주는 사이트  (0) 2020.09.08
Github 사용하기  (0) 2020.07.12
윈도우 환경에서 git과 github 설치 및 설정  (0) 2020.07.11