我正在尝试将信息收集到一个文本文件中,稍后我将上传到MySQL数据库。我正在努力收集所有PS3奖杯信息。我将使用此网站:http://www.ps3trophies.org/games/psn/1/来收集信息。我需要做的是在每个页面上进入每个游戏,获取游戏名称,每个奖杯以及有关它们的所有信息。感谢您提供给我的任何信息。
答案 0 :(得分:4)
我建议使用Simple HTML DOM Parser来执行此操作。您可以使用jQuery / CSS选择器来导航页面上的元素。你可以这样做:
$html = file_get_html('http://www.ps3trophies.org/games/psn/1/');
$otherPages = $html->find('a[href^=/games/psn/]'); // this will get the links for the 7 other pages
然后你还可以为所有游戏页面构建一个选择器,并加载它们。阅读解析器文档,了解您可以做的所有事情。
答案 1 :(得分:2)
简而言之,您需要使用PHP函数get_file_contents()
for ($i = 0; i<number_of_pages; i++){
$url = 'http://www.ps3trophies.org/games/psn/' . i;
$html = get_file_contents($url);
//do a regex search on $html to pinpoint your data
//save it
}
现在您可以使用$ html变量并结合正则表达式来查找所需的数据。
答案 2 :(得分:0)
选中此项会为您提供预期的输出
<?php
error_reporting(E_ERROR | E_PARSE);
$dom = new DOMDocument();
$dom->loadHTMLFile('http://www.ps3trophies.org/games/psn/1/');
$xml = simplexml_import_dom($dom);
$links = $xml->xpath('//table/tr/td/a');
for($i=30;$i<count($links);$i++):
?>
<a target="_blank" href="http://www.ps3trophies.org<?php echo $links[$i]['href']; ?>"><?php echo $links[$i]['href']; ?></a><br/>
<?php
endfor;
?>