[英]Capturing PDF files using Python Selenium Webdriver
我們使用python測試套件測試了內部開發的應用程序,該套件可通過Selenium WebDriver完成Web導航/交互。 我們的網絡測試的棘手部分是處理應用程序中的一系列pdf報告。 我們正在測試Firefox從v3.6升級到v16.0.1的計划升級,事實證明,由於firefox的temp文件夾的目錄結構發生了更改,因此無法再使用捕獲報告的方式。 我沒有寫原始的pdf捕獲代碼,但是我將對v16.0.1最終使用的代碼進行重構,所以我想知道是否存在比使用Python的Selenium Webdriver綁定保存pdf更好的方法。目前正在做。
以前,對於Firefox v3.6,單擊生成報告的鏈接后,我們將在“ C:\\ Documents and Settings \\\\ Local Settings \\ Temp \\ plugtmp”目錄中掃描pdf文件(具有特定的名稱約定),以被生成。 需要明確的是,我們不是從網頁本身保存報告,而是使用在firefox的Temp文件夾中生成的報告。
在Firefox 16.0.1中,單擊生成報告的鏈接后,將在文件“ C:\\ Documents and Settings \\\\ Local Settings \\ Temp \\ tmp * \\ cache *”中生成文件,文件名為隨機文件,結尾不為“ .pdf”。 如果使用與上一個類似的技術,則捕獲該文件會更加困難-每個瀏覽器都有一個不同的tmp ***文件夾,該文件夾具有一個充滿文件夾的緩存,其中的報告是使用隨機文件名生成的。
我能看到的最簡單的解決方案是直接保存pdf,但我還沒有找到一種方法來保存。
要使用與FF3.6中相同的方法(在Temp文件夾目錄中找到pdf),我認為我們需要執行以下操作:
我對這種方法感覺不太好,並且想知道是否有更好的方法來捕獲pdf文件。 誰能建議一個更好的方法?
注意:PDF文件的實際抓取仍然可以正常工作。
我們最終通過在測試前清除Firefox的臨時Internet文件,然后在生成報告后查找最近創建的文件來完成此任務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.