作者grassboy2 (活力花俏草儿仔政﹞O花俏)
看板Ajax
标题[请益] 如何抓取网页"纯"原始码?
时间Tue Nov 30 02:07:29 2010
※ [本文转录自 Web_Design 看板 #1Cy-kcgX ]
作者: grassboy2 (活力花俏草儿仔政﹞O花俏) 看板: Web_Design
标题: [请益] 如何抓取网页"纯"原始码?
时间: Tue Nov 30 02:06:27 2010
如标题…
以下是测试的url
http://grassboy.tw/webDev/test.php
他的原始码很简单,只有一行
<img src=test.png /><b>哈罗!
没错!很丑的code~
图片src没有双括号,粗体没结尾~
但进去网页後…
我在网址列下了 javascript:alert(document.body.innerHTML)
结果…我测了firefox chrome ie8三种浏览器…
大多都是回我
<img src=
"test.png
"><b>哈罗!
</b>
也就是说…浏览器会自动将这种不正确的网页结构进行修改,
并反映到innerHTML上…
那麽…有没有办法透过javascript取得
<img src=test.png><b>哈罗! 呢?
当然…这要求还满奇怪的…
不过如果今天某个网站(ex: plurk)透过header("text/html")的介面
回传一个json物件到browser时…
我要抓json物件的值…似乎应该要抓未经浏览器处理过的html降子…
原本的 {"msg_html":"hihi <img src=\"xx.jpg\" />"}
会被处理成 {"msg_html":"hihi <img src=
"\"xx.jpg\"
">"}
有点让人伤脑筯的说 >"<
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.87.174
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.87.174
1F:→ TonyQ:手动把 " 滤掉就好了 11/30 11:31
2F:→ TonyQ:不过你的问题感觉不是你描述的这麽单纯 11/30 11:32
3F:→ grassboy2:嗯嗯…怎样的状况下要滤、怎样的状况下不滤…感觉要查到 11/30 14:59
4F:→ grassboy2:浏览器所有"修正"的原则後才能进行处理>"< 11/30 15:00
5F:→ grassboy2:目前的想法是…乖乖在同个domain用ajax的方式直接抓网站 11/30 15:00
6F:→ grassboy2:吐给我的plain text…这样就不会经过浏览器修正了… 11/30 15:01
7F:→ heyyosweet:json response 简易编码一下到script端再解码.. 12/06 21:27