2012-10-30 21 views
1

我使用硒webdriver進行自動化測試。我開發了一個導航到許多圖像的頁面的測試。我想保存由網頁瀏覽器下載的圖像數據。我只能調用相同的URL地址,但存在問題,因爲圖像是動態生成的。目標是保存網頁中顯示的圖像數據,而無需其他http請求。Selenium WebDriver和加載的圖像

你可以幫我或給我任何建議。

謝謝

+0

你能否通過保存圖像數據來評論你的意思?此外,示例頁面的HTML代碼片段將有所幫助。 –

+0

是否要保存在該網頁上顯示的圖像? –

+0

是的,我想要保存顯示在頁面上的圖像,而不需要其他http請求。 – Jupin

回答

0

您應該考慮創建一個位於Selenium和遠程服務器之間的自定義代理。這樣你就可以截取你喜歡的任何內容並將其保存到磁盤中。

您正在使用哪種綁定?對於Java,設置代理服務器是相當直接的 - http://seleniumhq.org/docs/04_webdriver_advanced.jsp#using-a-proxy

絕望的選項:

  • 第二痛苦最小的方法是用硒快照整個頁面。一旦你有了,你可以剪出你關心的圖像。非常脆弱和非常hacky。
  • 你也可以用JavaScript攻擊頁面。 AFAIK,這是不可能的JS刮圖像位。所以相反,你必須在img網址中使用AJAX,然後手動設置IMG內容。但是,這實際上只是構建代理的一種非常尷尬的方式。