메모용


XE기반 커뮤니티에 로그인해서 회원만 조회 가능한 글을 긁어오는 크롤러가 필요해서 대충 파이썬으로 짜보고 있는데,

로그인 시스템이 다른 사이트와 약간 다른 점이 있는지 단순히 POST에서 form data를 넘겨주는 걸로는 제대로 로그인처리가 되지 않는다.

크롬 개발자 도구에서 Network탭을 선택한 뒤, 리퀘스트가 어떻게 날아가는지 확인해보니 별도의 쿠키값이 넘어간다.

PHPSESSION SESSIONKEY 등 잡다한 값들이 들어간다... 이걸 어디서 구해와야하는지 감이 안 와서 헤맸으나 어떻게든 됐다.


1. request.Session()을 통해 세션을 생성한다.

2. 세션.post로 해당 사이트에 요청을 보낼 것(get X)

3. 리턴값의 cookies를 저장 -> 세션 키 등이 저장되어있다

4. xe의 procMemberLoginForm ACT에 로그인 데이터를 POST

-> 헤더와 데이터는 적당히 크롬 개발자모드에서 Network 녹화 기능을 통해 사이트로 넘어가는 값들대로 적어주면 된다

-> cookie파라미터는 3에서 저장한 값을 날려준다.


일단 이렇게 하면 로그인은 성공한다... 회원전용페이지로 리다이렉트 넘어가는 것도 잘 된다.

다만 이 세션을 그대로 유지하고 get으로 글을 조회하는 건 안되는거같다 -_-;;

좀 더 연구가 필요하지만 일단 로그인을 성공한 것에 의의를 두자

-> 지금은 된다. 첫 연결부터 세션으로 해야 유지가 제대로 된다.

+ Recent posts