您的位置:首页 > Web前端 > JavaScript

如何抓取执行js之后的网页内容

2014-08-12 21:56 447 查看
问题:用httpclient和Jsoup似乎没办法获取到执行了js之后的网页内容?

两种思路:1.模拟浏览器行为,js是Ajax,发送了数据包到服务器,所以,要么你用firebug分析出发送的数据包,然后模拟出这些数据发送到服务器。

2.要么就模拟一个浏览器,比如htmlunit,或者webdriver。

针对第一种方法:分析发送数据包,引出的问题:如何使用Chrome自带的抓包分析工具?有两种方法:

抓包也就是分析http头信息。HTTP传输的消息是这样规定的,每一个HTTP包都分为HTTP头和HTTP体两部分,后者是可选的,而前者是必须。可以使用抓包工具分析网站把用户名,密码提交到哪里处理以便模仿。

方法如下

(1).

使用chrome浏览器自带的开发者工具查看http头的方法



1.在网页任意地方右击选择审查元素或者按下 shift+ctrl+c打开chrome自带的调试工具;(F12最省事)

2.选择network标签,刷新网页(在打开调试工具的情况下刷新);

3.刷新后在左边找到该网页url,点击 后右边选择headers,就可以看到当前网页的http头了;

(2)


Chrome 小技巧:使用自带的 HTTP 请求抓包系统





Chrome 自带了一个功能非常强大的 HTTP 抓包系统,非常适合调试程序,HTTP request header 和 response header 都可以很清楚的看到。这个抓包系统的使用也很方便,在地址栏输入 chrome://net-internals/#requests 即可进入。

(3)使用Wireshark,Wireshark是一个非常好用的抓包工具。抓包工具很多。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: