Javascript:下载另一个页面并与之交互

标签 javascript libraries

我想编写一些基本的脚本,我正在尝试用 javascript 编写。我基本上想下载一个 wikiquote 页面并抓取它。

执行此操作的最佳方法是什么?如何获取页面?我尝试通过 jQuery.get() 实现

$.get('http://en.wikiquote.org/wiki/Last_words', function(data) { console.log(data); })

但是日志只是一些错误对象和控制台显示

XMLHttpRequest cannot load http://en.wikiquote.org/wiki/Last_words. Origin null is not allowed by Access-Control-Allow-Origin. en.wikiquote.org/wiki/Last_words

GET http://en.wikiquote.org/wiki/Last_words undefined (undefined)

所以我想我没有采取正确的方法。我应该做什么?

此外,一旦我下载了文件,我可以使用哪些工具来遍历它?路径?正则表达式?有没有办法从中生成 DOM 模型并附加 jquery?

一个有趣的可能性是以某种方式打开一个下载页面的小弹出窗口,然后运行我的脚本来抓取页面并返回数据。我知道这听起来很像脚本注入(inject)。甚至可以以友好的方式做到这一点吗?

最佳答案

假设您将自己限制在浏览器中运行的 JavaScript,以及与运行脚本的页面不在同一主机上的文档——您不能。

Same Origin security policy使这不可能。没有它,网页可以从用户可以访问的任何站点(包括 LAN 站点)请求数据,包括他们的 IP 地址、他们的 cookie 和任何其他可能用于身份验证的内容。 (您所有的银行业务都属于我们)。

关于Javascript:下载另一个页面并与之交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6154762/

相关文章:

javascript - 检测浏览器中的 javascript 设置

java.lang.UnsatisfiedLinkError : no gluegen-rt in java. 库.path

java - 为什么需要在界面中导入库

javascript - 如何在 Meteor 中使用本地客户端库?

javascript - 使用 Socket.io 的 Node.js 应用程序在 OpenShift 托管上给出 "Unexpected response code: 400"

javascript - jQuery加载字符编码问题

javascript - 无法在 Angular Material 模态对话框中设置 Controller 的属性

javascript - 检测到搜索没有返回结果 - Selectize.js

java - 可以获取调用Java中方法的类的文件路径吗?

android - 无法导入 android.support.v7 (appcompat) - 未解析的库