파이썬 requests 로 daum 에 로그인 세션 얻기

조회수 841회

안녕하세요 requests 로 daum 에서 로그인을 해야하는데 이게 생각보다 많이 어렵네요

일단 코드는 아래와 같습니다.

import requests, json from bs4 import BeautifulSoup

html = requests.get('https://logins.daum.net/accounts/signinform.do').text soup = BeautifulSoup(html, 'lxml') fuid = soup.find('input', {'name':'fuid'})['value'] print(fuid)

LOGIN_INFO = {

'url':'https://www.daum.net/',
'relative':'',
'weblogi':'1',
'service':'',
'fuid':f'{fuid}',
'slevel':'1',
'finaldest':'',
'reloginSeq':'0',
'id':'mymyid123',
'pw':'mymypassword123',
'ipSecurity':'checked'

}

url = ''여기가 질문할 부분'

s = requests.Session()

b=s.post(url, data=json.dumps(LOGIN_INFO), verify=False, allow_redirects=False)

print("로그인 결과 : " + str(b))

크롬에서 다음 접속하여 개발자도구를 살펴보면 post 할 url 을 찾아보면

https://logins.daum.net/accounts/srp.do?slevel=1&rid=956017d4-a493-4aeb-901e-dd17d2975c61&srplm1=ef89405f53a52291925701369ff9e8c5e899a63adcd7fc39a80ec2c03893cb6b

이런식으로 나와있습니다. 파라메터가 rid 나 srplm1 이라는 것이 접속할때마다 변하는데 이것을 어떻게 얻어오는지를 몰라서 헤매고 있습니다.

response 값은 언제나 200이 나오지만 실제로 로그인이 되지는 않습니다. 아시는분 계시면...부탁드립니다 알려주시면 사례하겠습니다. ㅠㅠ

  • 다음은 동적으로 렌더링되기때문에 html 파서로는 긁어올 수 없어요. 웹드라이버를 사용해보셔요. 알 수 없는 사용자 2020.7.21 09:17
  • 크롬에서 개발자도구에 request response로 주고받는쿠키값 세션값등등 바인딩하거나 와이어샤크등 패킷분석툴보면서 개발할수도있겠지만 보다 쉽게 가능한 웹드라이버로 해보시는걸 추천드려요 알 수 없는 사용자 2020.7.28 23:57

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)