2013-12-10 3 views
0

저는 PHP를 배우려고 노력 중이고 leagueoflegends 게시판에서 정보를 가져올 수있는 PHP 페이지를 작성하기로 결정했습니다. 문제 : 사이트에 먼저 로그인해야하는 문제가 있습니다. 필자는LeagueOfLegends.com/board에서 cURL 로그인, 보안 문자 및 세션을 PHP로 만드는 방법은 무엇입니까?

$ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, 'http://forums.euw.leagueoflegends.com/board'); 
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.6 (KHTML, like Gecko) Chrome/16.0.897.0 Safari/535.6'); 
    curl_setopt($ch, CURLOPT_HEADER, true); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt"); 
    curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt"); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); 
    curl_setopt($ch, CURLOPT_REFERER, "http://leagueoflegends.com"); 
    $html = curl_exec($ch); 
    curl_close($ch); 
    echo $html; 

을 시도하고 나는

file_get_contents('http://forums.euw.leagueoflegends.com/board/') 

을 시도했지만 때마다 나는 아무데도 얻을. 다른 탭에 로그인하면 포럼의 페이지 소스를 얻을 수 있었으면 좋겠지 만, 그렇지 않은 것 같습니다. 솔직히 여기에서 어디로 가야할지, 아니면 단서를 찾기 위해 무엇을 찾아야할지 모릅니다. 일반적으로 나는 조금 더 많은 정보를 게시하고 싶다. 그러나 나는 PHP를 배우려고했다. 나는 뛰어 들고서 최고로 배우는 것 같습니다.

+0

대신 파이어 버그의 넷 탭 또는 httpfox와 같은 브라우저를 사용하고 커뮤니케이션 프로세스가 무엇인지 정확히 확인하십시오. 예 : 요청이 어딘지로 리디렉션됩니까? 리디렉션을 존중하지 않고 그냥 보석금을 내야합니다. –

답변

3

먼저 PHP 학습의 길을 찾아보십시오! 컬은 강력한 기능을 가지고 있지만 요즘에는 사용하기 쉽도록 구즈 대신 (guzzlephp.org) 사용하고 있습니다.

로그인 메커니즘이있는 대부분의 사이트는 실제로 세션 또는 쿠키를 사용하여 사용자를 매핑하므로 올바른 경로에 있습니다. 위의 내용은 메인 보드 페이지를 검색하는 것입니다. 여기에서 두 번째 컬 요청을 제출하여 로그인하십시오. 로그인 페이지가 : 실제로하지만 모달 창을 팝업하고 보안 문자를 사용

https://account.leagueoflegends.com/login

. 몸과 같이 로그인이 도메인에 대한 쿠키 데이터를 내보낼하고 있는지 확인하기 위해이 보안 문자를 가지고 있기 때문에 https://account.leagueoflegends.com/auth

는, 당신의 최선의 방법이 될 수있다 :

username 
password 
recaptcha_response_field 

에 다음과 같은 양식 필드를 제출합니다 스크립트에서 다시 사용할 수 있습니다. 일부 시점에서 만료되므로 완전히 자동화되지는 않습니다.

+0

올바른 방향으로 한 점 주셔서 감사합니다, 거기에 PHP를 통해 기존 세션이나 쿠키를 당길 방법이 있습니까 아니면 수동으로 할 수 있습니까? –

+0

그것은 컴퓨터에 로컬로있을 것이므로 * 이론 *에서 코드로 할 수있는 방법을 찾을 수는 있지만 알아 내야 할 시간이 많이 든다고 생각합니다. 이것을 읽고 데이터를 수동으로 복사하는 것이 더 빠를 것입니다. http://stackoverflow.com/a/15071638/181151 –