我正在尝试href
从我不是管理员的外部站点获取元素。
这个代码href
是这样的:
<a href="?form=397&&id=45950&&act=act">Action</a>
我只想得到一个:'?form=397&&id=45950&&act=act'.
我怎样才能做到这一点?也许使用 JQuery?
由于跨域浏览器限制,您将遇到问题。如果您想使用 JS,可以使用一个 ajax 插件:
https://github.com/padolsey/jQuery-Plugins/blob/master/cross-domain-ajax/jquery.xdomainajax.js
然后只需使用:
$.ajax({
url: 'http://www.somewebsite.com',
type: 'GET',
success: function(res) {
// your code here
}
});
好吧,既然你编辑了你的答案说:
我怎样才能做到这一点?例如。使用 jQuery。它只是例如。
由于使用 jquery 只是例如,这里是一个非 jquery 解决方案:
$ curl 'http://pastebin.com/raw.php?i=hDPyZ2Ne' |sed -n 's/.*href="\([^"]*\).*/\1/p'
(将该网址替换为您网站的网址)
该行将在 *nix 终端上执行。那将输出
?form=397&&id=45950&&act=act
现在,用jquery完全 不可能吗?你的意思是,是的,但如果你使用phantomjs,你可以在页面 DOM 上执行你自己的 js。
这是一个使用 jquery 来完成的 phantomjs 脚本:
var page = require('webpage').create();
var url = 'http://...put your url here';
page.open(url, function() {
page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js", function() {
var href = page.evaluate(function() {
return $('a').attr('href');
});
console.log(href);
phantom.exit();
});
});
编辑:前端人给你的方法也很好。