Steam 내 계정 게임 목록 가져오기

이 코드는 작업물중 하나인 스팀딜(비공개)의 스팀 게임 목록 가져오기 기능으로, simple_html_dom 이라는 오픈소스를 사용하고 있습니다.

전제조건: scraping하는 Process.php와 같은 폴더에 simple_html_dom.php 파일이 존재해야 합니다.

현재 배포자 Jose Solorzano의 Simple HTML DOM Parser은 변경된 최신 버전의 php에서 작동하지 않기 때문에 임의로 수정한 버전을 올립니다.

$param1로 들어가는 링크는 스팀 -> 우측상단 프로필 -> 우측 메뉴의 게임 -> 주소 카피
ex) 게임 목록
simple_html_dom

function  scraping()
{

require('module\simplehtmldom\simple_html_dom.php');
$param1  =  substr('https://steamcommunity.com/profiles/76561198083940699/games/?tab=all',  0);
echo  '<h1>'.$param1.'</h1>';
if(!$param1)  {
throw  new  exception('param1 값이 없습니다.');
}

$html  =  file_get_html($param1);
// $param1의 주소에 있는 페이지의 모든 코드를 가져와 $html에 삽입.
foreach($html->find('script')  as  $element)
$str  =  $element->innertext;
if  (preg_match('/var rgGames =(.*?)var rgChangingGames = /',  $str,  $result))  {
$result  =  $result[1];
}
// 정규식을 이용해 스크래핑한 스크립트중 json구문을 제외한 바깥쪽 코드들을 걷어냄
$gamelist  =  substr($result,  0,  -5);
// json구문 뒤에있는 세미콜론 제거
$result  =  array();
$result['success']  =  true;
$result['data']  =  $gamelist;
// json을 data에 저장
echo  $result['data'];

}