1

我对编程非常陌生,需要一些帮助来从网站获取数据并将其传递到我的 PHP 脚本中。

该网站是http://www.birthdatabase.com/

我想插入一个名称(名字和姓氏)并检索结果。我知道您可以通过在 URL 中传递名称来查询该站点,但是我在抓取结果时遇到了问题。

http://www.birthdatabase.com/cgi-bin/query.pl?textfield=FIRST&textfield2=LAST&age=&affid=

我正在使用 file_get_contents($URL) 函数来获取页面,但之后需要帮助。具体来说,如果该名称有多个结果,我只想从某个状态中抓取结果。

谢谢你的帮助。

4

1 回答 1

2

你需要很棒的 simple_html_dom 类。

使用这个类,您可以使用与 jQuery 类似的方式查询网页的 DOM。

首先在您的页面中包含该类,然后使用此代码段获取页面内容:

$html = file_get_html('http://www.birthdatabase.com/cgi-bin/query.pl?textfield=' . $first . '&textfield2=' . $last . '&age=&affid=');

然后你可以使用 CSS 选择来抓取你的数据(像这样):

$n = 0;
foreach($html->find('table tbody tr td div font b table tbody') as $element) {
    @$row[$n]['tr']  = $element->find('tr')->text;
    $n++;
}

// output your data
print_r($row);
于 2013-03-24T18:02:45.073 回答