"
public async login(){
const loginPage = 'https://m.dcinside.com/auth/login';
const { id, password} = this;
//bloock_key 획득을 위한 로그인페이지 데이터 추출
var body:string = await customRequest(
{
uri:loginPage,
user:this,
method:"GET",
title:" CSRF 토큰/ 시리얼라이징한 기타 폼 데이터를 획득하기 위한 로그인 페이지 오픈",
}
) as string
var productKeys = parseAccessQueryString.loginPage(body)
var csrfToken = parseCSRFToken(body)
//액세스키인 block_key 획득
const accessResult:any = await customRequest({
uri:"https://m.dcinside.com/ajax/access",
user:this,
method:"POST",
title:"로그인 액세스키 획득 시도",
csrfToken:csrfToken,
formData: productKeys,
json:true
}).catch(err => console.error(err))
var serialize = getSerialize(body,"#login_process");
// 로그인
var result = await customRequest({
uri:'https://dcid.dcinside.com/join/mobile_login_ok_new.php',
user:this,
method:"POST",
title:"최종 로그인 시도",
csrfToken:csrfToken,
formData: {
...serialize,
user_id:id,
user_pw:password,
value: accessResult["Block_key"]
}
}).catch(err => console.error(err))
const $body :any= await customRequest({
uri:'https://m.dcinside.com/aside',
user:this,
method:"GET",
title:"로그인 성공했는지 확인",
jquery:true
}).catch(err => console.error(err))
return {
success:$body.find(".login-box .nick").length !== 0,
id:$body.find(".login-box .id").html(),
nick:$body.find(".login-box .nick").html(),
}
}
외않되지
"
셀레니움으로 해
속도딸려서 안됨
puppeteer 어떰