使用来自Ajaxed站点的cURL解析内容

时间:2014-12-04 23:21:17

标签: php ajax codeigniter curl web-scraping

我正在使用CodeIgniter编写一个应用程序,我需要解析来自另一个站点的一些内容,问题是该站点使用ajax加载内容,而我使用的简单cURL方法并不是用来获取这样的内容。 (我对此有点新鲜)

我已经从这里尝试了一些解决方案,但没有成功

这是我的实际代码:

class Deuses extends CI_Controller {

    function Deuses() {
         parent::__construct();
         $this->load->model("modelo_deuses");
         $this->load->library('form_validation');
    }

    function builds($deus_nome){
        $url = 'http://www.smitestuff.com/gods/agni#builds'; 
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_HTTPHEADER, array("X-Requested-With: XMLHttpRequest", "Content-Type: application/json; charset=utf-8"));
        $html .= curl_exec($curl);
        curl_close ($curl);
        echo $html;
        $data['deuses'] = $this->modelo_deuses->ver($deus_nome);
        $data['skins'] = $this->modelo_deuses->ver_skins($deus_nome);
        $this->load->view('deuses/skins',$data);
    }
}

我想获取加载到

的内容
<main id="god_detail"></main>

请注意,它不是正确解析一般内容,而是没有来自#god_detail的任何内容(这是我真正需要的)

所以我需要一个帮助来了解如何让cURL进入网站并捕获ajax调用的内容。

欢迎任何帮助!

提前谢谢

1 个答案:

答案 0 :(得分:1)

使用http://www.smitestuff.com/gods/html/agni/content.html网址代替http://www.smitestuff.com/gods/agni#builds您将获得每个标签的所有内容。