使用PHP Curl,我想将H1s刮入数据库

使用PHP Curl,我想将H1s刮入数据库,php,curl,Php,Curl,我想每小时抓取一个网站,比如说CNN,并将H1中的任何标题添加到我的MYSQL表的新行中。我该怎么做呢?我不希望有人为你做全部工作,但这里有一些东西可以让你开始 首先,您需要获得实际的源代码,您可以为此使用或。关于这附近的情况有很多信息 然后,你需要刮CNN的所有H1标签。一个简单的方法是使用。下面是一个从HTML源获取所有标题的简单函数: function get_h1($html) { $dom = new DOMDocument(); @$dom->loadHTML(

我想每小时抓取一个网站,比如说CNN,并将H1中的任何标题添加到我的MYSQL表的新行中。我该怎么做呢?

我不希望有人为你做全部工作,但这里有一些东西可以让你开始

首先,您需要获得实际的源代码,您可以为此使用或。关于这附近的情况有很多信息

然后,你需要刮CNN的所有H1标签。一个简单的方法是使用。下面是一个从HTML源获取所有标题的简单函数:

function get_h1($html) {
    $dom = new DOMDocument();
    @$dom->loadHTML($html); // Supress warnings if our html is not well formed
    $headings = $dom->getElementsByTagName("h1");

    $retval = array();

    foreach($headings as $header) {
        $retval[] = $header->nodeValue;
    }

    return $retval;
}
请注意,这并不考虑不同的编码等

解析的另一个选项是使用优秀的

然后您需要将其保存到数据库中,您可以使用或库进行此操作

最后,您需要每小时运行一次。使用cron作业执行此操作。您可以找到有关如何设置cron作业的信息


这应该有助于你开始。你可能想给它添加更多的功能,比如确保不添加重复的标题等。

你知道,这让我很好奇。我只是在和NodeJS玩。我打赌服务器端JQuery和AJAX真的可以在瞬间完成类似的工作。虽然不确定是否连接到数据库,但解析将是一个轻松的过程。

我会花200美元为您完成这项工作。您有什么问题?你试过什么?你可能想在谷歌上翻个底朝天,学点东西,当你有关于特定问题的具体问题时再回来。你可以先在谷歌搜索“php卷曲教程”,然后搜索“用php解析html”,最后搜索“php mysql教程”。把这些技能放在一起解决所有问题,除了每小时一次,这可能是最适合的。Nir Levy的可能副本很幸运有你在身边,alexn:)希望他能留下足够长的时间来奖励你一个绿色的复选标记。Nir Levy应该给你200美元。根据我的经验,不包括bug,在节点中执行相当大的刮取作业需要相当多的RAM/CPU。我发现PHP+regex是简单的抓取/解析的最佳选择。@Kevin-谢谢你的介绍。