在打开的窗口上使用jquery函数

时间:2015-10-20 20:58:56

标签: jquery html angularjs node.js window

我不知道这是一个简单或复杂的问题(或者之前是否曾被问过)。我正在尝试在浏览器中打开一个网页,比如google.com,然后使用jquery来抓取/修改这些元素。以下是我的代码:

$scope.populateUrl = function () {

    var openWindow = function () {
        return $q(function (resolve, reject) {
            resolve(window.open('https://www.google.com'))
        })
    }

    openWindow().then(function (wnd) {
        console.log(wnd.document)
        var inputs = wnd.document.getElementsByTagName('input')
        console.log(inputs)
    })
}

我觉得这应该是一个非常简单的问题,但当我控制日志wnd.document时,我得到:

#document
  <html>
    <head></head>
    <body></body>
  </html>

输入变量为空。 wnd.document不应该是谷歌的HTML吗?如果它有所作为我正在为这个项目使用Node。

1 个答案:

答案 0 :(得分:0)

我可以从$scope了解到你在客户端编写angularjs。

您正尝试使用您用户的Cookie从您的网站获取google.com。那么为什么不在之后获得paypal.com并查看用户的余额是什么或进行一些转移?如果您了解这是否可能会导致巨大的安全问题。

无论如何,你要做的事情是不可能的。

您可以尝试向您想要的网站发送获取请求,如果此网站允许通过访问控制允许来源,您可以获得所需的响应。

虽然如果您只想抓取一个站点并从中获取一些数据,您应该在服务器端执行此操作。有几个模块可以做到:https://github.com/cheeriojs/cheerio 或者整个程序特定于:http://docs.casperjs.org/en/latest/quickstart.html