我刚开始学习jQuery。我偶然发现了“从其他网页抓取内容”。 我正在浏览其中一个网站中的代码,了解如何实现它,这是它的一部分:
$(document).ready(function(){
$('#list').load("http://www.narutoget.com ul", function(responseText){
$('#otherHtml').text(responseText);
});
});
我无法从页面获取内容,即narutoget.com。 有人可以帮我解决一下如何实现它吗? 我想知道这样做是否合法。
答案 0 :(得分:0)
由于您没有维护其他网站,same origin policy会阻止它,除非另一个网站通过包含好CORS headers明确允许它,唯一的解决方案就是这样做服务器端,您可以根据需要查询服务器。
如果您也维护其他网站,那么您只需要放置好的CORS标头,让第一个网站查询它。
这是一个关于为各种服务器端技术启用跨源请求的好教程:enable-cors
完成后,您只需查询服务器并分析页面:
$.get("http://www.narutoget.com", function(html) {
var ul = $('ul', html).val();
$('#otherHtml').text(ul);
});
答案 1 :(得分:0)
您可能会被禁止跨站点来源政策。 JSON-P是解决这个问题的一种方法,JQuery Cross-Domain .load() (self-constructing widget)
你收到错误了吗?查看NET下的Web检查器,查看该请求的状态代码。如果没有任何错误或跨域限制,我不明白问题是什么。你收到任何文字吗?