2010-02-08 128 views
5

我想知道如何刮取使用AJAX在網頁上呈現內容的網頁。通常,這種頁面的HTTP GET只會獲取嵌入JavaScript代碼的HTML頁面。但是我想知道是否有可能以編程方式(最好是Java)查詢這些頁面並模擬Web瀏覽器類型的請求,以便獲取AJAX調用後生成的HTML內容。從使用AJAX的網頁獲取HTML

回答

3

The Productive Programmer作者Neal Ford建議功能測試工具Selenium可用於非測試任務。客戶端DOM操作發生後檢查HTML的任務屬於這一類。 Selenium甚至允許你自動與瀏覽器交互,所以如果你需要點擊一些按鈕來觸發一些AJAX事件,你可以編寫腳本。 Selenium使用瀏覽器插件和基於Java的服務器工作。硒測試代碼(或您的案例中的非測試代碼)可以用各種語言編寫,包括Java,C#和其他.Net語言,php,perl,python和ruby。

0

爲什麼選擇時,你可以兼得? TestPlan支持Selenium和HTMLUnit作爲後端。另外,它具有用於執行最常見任務的非常簡單的語言(如果需要,擴展可以用Java編寫 - 實際上很少見)。