打开更多链接,然后解析php中的一些元素

时间:2014-04-28 11:55:32

标签: php parsing simple-html-dom

我有一个简单的问题。

我需要在php中打开这个页面http://www.50states.com/

然后我需要打开每个州和国家页面(例如:阿拉巴马州),我需要解析州名,资本,位置。我想用简单的html dom库http://simplehtmldom.sourceforge.net/

来做

我想在每个州都这样做。怎么可能???

//parser.php
include simple_html_dom.php;
$document = file_get_html($site);

foreach($document->find('a') as $e) {
    echo $e->href . '<br>';
}

那么现在呢?请帮忙。我想现在我只需要有状态的hrefs然后我必须打开它......那么?

1 个答案:

答案 0 :(得分:1)

为什么不在网址上输入状态名称?以此为例:

<?php

include 'simple_html_dom.php';

$state = 'alabama';
$main_url = 'http://www.50states.com/' . $state . '.htm';
$html = file_get_html($main_url);

$state_info = null;
$capital_city = '';
foreach($html->find('ul[class=bulletedList]') as $key => $value) {
    $state_info = $value;
    // Get particular value (traverse DOM)
    // Sample: search for capital city
    if(strpos($value->children(0)->children(0)->innertext, 'Capital City:')) {
        $capital_city = $value->children(0)->children(0)->innertext;    
    }
}

echo $state_info;

echo $capital_city;

?>

有关更深入的信息,您应该查看手册,无论如何都要记录在案。

  

http://simplehtmldom.sourceforge.net/manual.htm