我正在使用Chickenfoot編寫一個網絡爬蟲,並且需要保存PDF文件。我可以點擊的鏈接頁面上或搶PDF的網址,並使用用Chickenfoot保存PDF文件
go("http://www.whatever.com/file.pdf")
,我得到了Firefox的「打開file.pdf」對話框,但不能點擊「確定」按鈕保存實際文件。
我試過使用其他方式下載文件(wget,python的urllib2,斜紋),但PDF文件被門控,所以這些都不會工作。
任何幫助表示讚賞。
我正在使用Chickenfoot編寫一個網絡爬蟲,並且需要保存PDF文件。我可以點擊的鏈接頁面上或搶PDF的網址,並使用用Chickenfoot保存PDF文件
go("http://www.whatever.com/file.pdf")
,我得到了Firefox的「打開file.pdf」對話框,但不能點擊「確定」按鈕保存實際文件。
我試過使用其他方式下載文件(wget,python的urllib2,斜紋),但PDF文件被門控,所以這些都不會工作。
任何幫助表示讚賞。
爲了安全起見,您將無法單擊Firefox對話框。 下載URL內容的最佳方式是閱讀然後編寫URL的內容。
// Chickenfoot 1.0.7 Javascript Code to download the content of a url.
include("fileio.js"); // enables the write function.
var url = "http://google.com",
saveFileTo = "c://chickenfoot-google.com";
write(saveFileTo, read(url));
你可能會發現它有助於使用jQuery與雞腳。 http://groups.csail.mit.edu/uid/chickenfoot/scripts/index.php?title=Using_jQuery,_jQuery_UI_and_similar_libraries
這個關於如何在Mozilla開發者文檔中保存目標的例子看起來應該像你想要的那樣完成。我測試了一個非常相似的Chickenfoot示例,它可以獲得臨時環境變量,並且在Chickenfoot中適用於我。
https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIWebBrowserPersist#Example
您可能必須在工具,選項,應用程序與應用協會發揮,以確保操作設置爲保存文件,但這些設置可能不適用於這些功能。
末回答,開始了相關牢騷......
我當然希望有人能修復奇肯富特的許多錯誤,並寫一個很好的食譜節目指南。我已經使用了好幾年了,還有很多基本的東西我都無法弄清楚如何去做。我終於打破了訂閱郵件列表,因爲檔案有一些體面的腳本示例。它需要通過pdf參考,博客等進行大量搜索,因爲Web API引用非常稀少。 我非常喜歡Chickenfoot可以讓一些任務自動化,但是我需要花幾天時間來搜索javascript,DOM和Firefox文檔,以便找到辦法做一些它不能做的事情,因爲我不是一個真正的Web程序員。 Chickenfoot的目標似乎是我不應該這樣做,但遺憾的是很少有人正在完善概念驗證,因爲麻省理工學院已經放棄了這個項目。
我試圖用這幾種方法使用Chickenfoot命令,並確認它們不能與最新的Firefox 3和Chickenfoot 1.0.7一起使用。
我希望這有助於!祝你好運。對不起,我昨天只是碰到你的問題,但發現它太有趣了,不能一個人留下。
這對我來說可以保存來自NCES門戶的Excel文件。
http://muaz-khan.blogspot.com/2012/10/save-files-on-disk-using-javascript-or.html
我使用Firefox 3.0和代碼的 「舊語法」 版本。我也剝離了用於IE的代碼和「(window.URL || window.webkitURL).revokeObjectURL(save.href);」這產生了一個錯誤。
Larry,這似乎工作正常保存網頁的來源,但似乎損壞PDF文件或任何其他二進制文件,我已經嘗試過。我讀了一些關於jQuery的內容,但還沒有遇到這個問題的解決方案。 – alaiacano 2010-12-08 15:46:29