我需要从以下site抓取内容,以便我可以为我的运动队获得结果。
问题是,页面上的内容是在实际页面加载后加载的,所以不可能只使用框架作为simple_html_dom
解析器,因为加载页面时数据不在DOM中。
任何人都可以提示如何从该页面获取数据,尽管它在页面加载后加载了大约一秒钟?
关于这一点的棘手部分是,内容似乎是通过asmx服务加载的,我似乎无法弄清楚它是如何工作的。看起来它首先获取实际调用服务的JavaScript函数,然后它发布到服务,并使用一些参数来实际获取内容。
我试过这个:
<?php
$data1 = array (
ageGroupID => "",
callbackcontextkey => "AD660FACB92F5451B76F322F9284247F0044FCCE817DEE083B7B147100D853DEC61A0521423A76CD85C7B433DE4EB970",
clubID => "1617",
leagueGroupID => "",
leagueGroupTeamID => "",
leagueMatchID => "",
playerID => "",
regionID => "",
seasonID => "2014",
subPage => "6"
);
$data_string = json_encode($data1);
$ch = curl_init('http://badmintonpeople.dk/SportsResults/Components/WebService1.asmx/GetLeagueStanding');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string))
);
$result = curl_exec($ch);
echo $result;
?>
我收到了这个回复:
{“消息”:“处理请求时出错。”,“StackTrace”:“”,“ExceptionType”:“”}