作者littlebear00 (bear)
看板Ajax
标题Re: [问题] 想请问有没有办法抓到动态的网页?
时间Wed May 26 21:08:02 2010
谢谢TonyQ大大热心指导
我目前没有透过server端处理(看网页上的资料似乎要做proxy??...还不是很懂)
我目前的完整动作如下
<script type="text/javascript" src="jquery.js"/>
<script type="text/javascript">
function init(){
var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;
iFrameObj.id = 'myFrame';
document.body.appendChild(iFrameObj);
$(iFrameObj).load(
function checkFrame(){
alert('myFrame loaded.');
//这边应该要抓取ifram里面的值
//可惜无法跨网域
}
);
}
</script>
...
<body onload="init()"></body>
...
2010/05/26 更新!
http://blog.csdn.net/sfdev/archive/2009/02/13/3887006.aspx
似乎可解!
: 最近再写project的时候碰到一个颇头痛的问题...
: 我必须拿到一份"动态执行过"的网页原始码
: 再对内部加以分析
: 想请问像下方程式码的例子
: 有没有办法抓到利用javascript安插进去的<iframe>??
: 而不是什麽内容都没有的<body>
: 程式码:
: <script type="text/javascript">
: ...
: var iFrameObj = document.createElement('IFRAME');
: document.body.appendChild(iFrameObj);
: ...
: </script>
: ...
: <body></body>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.51.146
1F:→ TonyQ:你连结中提到的几乎都要透过SERVER SIDE的协助啊 05/26 21:30
2F:→ TonyQ:第一个就是我说得proxy法,第二个是json载入要对方有支援, 05/26 21:30
3F:→ TonyQ:第三个要同父网域底下。 05/26 21:31
4F:→ TonyQ:第二个大概是最不可行的,不过还是要看对方网站。 05/26 21:31
5F:→ TonyQ:第三个你应该可以清楚判断可不可行,第一个是要考虑到对应的 05/26 21:32
6F:→ TonyQ:js档之类的东西要怎麽处理会有点麻烦. 05/26 21:32
7F:→ littlebear00:惊! T大 你的意思是该不会load回来的js是未执行的? 05/26 21:43
8F:→ j100002ben:对了,有没有办法用Iframe拉进来再去找DOM元素? 05/28 02:34
9F:→ j100002ben:iframe映像中可以跨网域.... 05/28 02:34
10F:→ TonyQ:iframe可以跨网域浏览,但是要用js取内容是做不到的。 05/28 10:58
11F:→ TonyQ:我早就实验过了~-~ (有开firefox特别环境参数例外) 05/28 10:58
12F:→ j100002ben:谢谢楼上~~~^^ 05/28 11:08