如何获取网站来源作为原始文本Jquery

时间:2013-06-24 12:29:05

标签: php javascript jquery html

我一直在搜索,但似乎无法找到答案,我想以原始文本检索网站的源代码,我尝试了一些像

    $("#divname").html('<object data="http://example.com/">');

但是你得到的只是一个加载了网站的div,如果我把它改成.text或.val它就行不通:/

任何帮助都会非常感激

2 个答案:

答案 0 :(得分:1)

使用file_get_contentsCurl

<?php
    echo '<div id="divname">' . htmlspecialchars(file_get_contents('http://example.com')) . '</div>';

答案 1 :(得分:1)

你可以在php中使用curl(编写简单代理)并调用ajax从url中获取页面

file.php

if (isset($_POST['url'])) {
    $ua = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $_POST['url']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_USERAGENT, $ua);
    echo curl_exec($ch);
}

并在javascript中使用ajax

$.ajax({
    url: 'file.php',
    type: 'POST',
    data: {url: 'http://example.com/'},
    dataType: 'text',
    success: function(html) {
       // process html
    }
});

我使用$.ajax函数,因为$.post会将内容解析为html而不是文本。