(selenium+C#爬蟲)如何禁止下載提示框,直接下載各類文件(pdf,zip,doc)

在使用selenium+c#+firefox的過程中,因爲要直接下載pdf文件,zip等等多種文件,於是便有了下面的代碼。

            FirefoxOptions tempOptions = new FirefoxOptions();  
            tempOptions.SetPreference("pdfjs.disabled", true);//關閉pdf查看
            tempOptions.BrowserExecutableLocation = System.IO.Directory.GetCurrentDirectory() + "\\Mozilla Firefox\\firefox.exe";//打包後設置瀏覽器路徑
            //tempOptions.AddArgument("--headless");//無窗口運行
            tempOptions.SetPreference("browser.download.folderList", 2);
            tempOptions.SetPreference("permissions.default.image", 2);//無圖
            tempOptions.SetPreference("browser.download.manager.showWhenStarting", false);
            tempOptions.SetPreference("browser.helperApps.alwaysAsk.force", false);
            tempOptions.SetPreference("browser.download.dir", "D:\\DataPdf");//設置下載路徑
            tempOptions.SetPreference("browser.download.useDownloadDir", true);
            tempOptions.SetPreference("permissions.default.stylesheet", 2);
            tempOptions.SetPreference("browser.helperApps.neverAsk.saveToDisk",  "application/zip,application/pdf");//禁止文件下載提示
             FirefoxDriver tempDriver = new FirefoxDriver(tempOptions);

但是當我的下載文件多出一個doc的時候,我就一籌莫展了,因爲不知道doc在firefox中的文件類型算是什麼樣的。
也曾填過“,appliction/doc”,根本沒用。
在網上看到可以通過下載文件,然後再在菜單->選項->常規->文件與應用選項中去選擇。
可是我一去看,卻發現根本沒有doc的選項卡。
在這裏插入圖片描述
然後我看到網上說是可以通過下載獲取這種文件類型,可我下載之後問題還是沒有解決。
最後我發現在下載的時候,你需要這樣做。
在這裏插入圖片描述
之後就可以在文件與應用程序裏面查看文件類型了。
在這裏插入圖片描述
選中你要的文件類型,點擊其他。
然後
在這裏插入圖片描述
你把得到的這句話加到上面代碼中的browser.helperApps.neverAsk.saveToDisk,就可以了。
如下:

  tempOptions.SetPreference("browser.helperApps.neverAsk.saveToDisk",  "application/vnd.ms-word,application/zip,application/pdf");//
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章