首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取网页并使用javascript阅读

获取网页并使用javascript阅读
EN

Stack Overflow用户
提问于 2010-12-16 10:30:42
回答 2查看 1K关注 0票数 0

嗨,我有一个简短的问题,说你想连接到一个网站并搜索它包含哪些链接,你是如何用javascript实现的?我想做这样的事

代码语言:javascript
复制
Var everythingAdiffrentPageContains = //Go to some link ex www.msn.se and store it in this variable

var pageLinks  = [];  var anchors    = everythingAdiffrentPageContains.getElementsByTagName('a');  
var numAnchors = anchors.length;
for(var i = 0; i < numAnchors; i++) {     
     pageLinks.push(anchors[i].href); 
} 

我们可以在这里假设,我们已经获得了网站的权利,所以这是不关心的。

换句话说,我想去某个站点并将所有这些站点超链接存储在一个数组中,您将如何在javascript中做到这一点?

谢谢

编辑自指出Im ,而不是试图连接到另一个领域。我试图连接到另一个apache服务器在我的局域网,托管一个网站,我想扫描的链接。

Unfornuatley我的not服务器上没有PHP :/但是一个简单的javascript就可以做到这一点

例如,转到X:/文件夹/example.html。

阅读它,并存储链接

EN

回答 2

Stack Overflow用户

发布于 2010-12-16 10:32:53

不幸的是-你不能这么做。“我们可以在这里假设我们对站点拥有访问权限”……从JavaScript的角度来看,这是一个错误的假设,如果页面位于上的另一个域上。您只是不能通过JavaScript访问另一个域上的内容(反正不是HTML )。它被同源政策阻止了,原因有几个安全原因。

票数 0
EN

Stack Overflow用户

发布于 2010-12-16 10:41:58

我建议您使用一个JS框架,该框架可以帮助您轻松地检索元素并使用DOM进行操作。例如,使用mootools可以实现这样的目的--编写如下代码:

代码语言:javascript
复制
var req = new Request.HTML({
   url:'./retrieve.php?url=YOURURL', //create a server script to "retrieve" the html of another domain page    
   onSuccess: function(tree,DOMelements) {
       var links = [];
       DOMelements.getElements('a').each(function(element){
           links.push(element.get('href'));
       });
   }
});
req.send();

例如,应该以这种方式编写retrieve.php页面:

代码语言:javascript
复制
<?php
    $url = $_GET['url'];
    header('Content-type: application/xml');
    echo file_get_contents($url);
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4459739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档