哪个用? file_get_contents,file_get_html或cURL?

时间:2014-07-04 03:42:13

标签: php curl file-get-contents simple-html-dom

我需要从网页上的表中抓取数据。然后,我想将这些数据存储在一个数组中,以便稍后将其存储在数据库中。我对此功能非常不熟悉,所以我想尽可能使用最简单的方法。

我应该使用哪个? file_get_contentsfile_get_htmlcURL

2 个答案:

答案 0 :(得分:2)

  1. 您可以使用curl()file_get_contents()来获取网页内容。
  2. 然后,使用正则表达式提取您需要的内容(preg_match()
  3. 最后,将内容插入数据库。
  4. 您可以使用crontab命令(Linux: crontab -e)来自动执行php脚本。

    我的英语很差,所以我希望有人给我意见。谢谢!

答案 1 :(得分:0)

我更喜欢PHP Simple HTML Dom Parser:

http://simplehtmldom.sourceforge.net/

然后,您可以使用其语法循环访问某些元素。例如,要获取您发送的链接上的所有团队的名称,将其保存到数组然后执行MySQL插入语句,您可以执行以下操作:

$html = file_get_html('http://www.tablesleague.com/england/');

$name_array = array();

// Get all names
foreach($html->find('div.cell.name.no_border') as $element){ 
    //Push the name to an array
    array_push($name_array, $element->innertext);
}

然后准备一个MySQL声明:

foreach($name_array as $name){
    $sql = "INSERT INTO table_name (name) VALUES ($name)";
    $result = $mysqli->query($sql);
}

你总是可以创建一个包含你想要的所有元素的多维数组,当你遍历它时从数组中提取它们并为每个查询上传多个项目。