2017-03-23 125 views
0

如何在python語言中使用wget來保存包含網頁內容的網頁,以便它可以離線查看?目前我使用下面的代碼:如何使用wget在python下載網頁(mhtml格式)

import wget 

driver.webdriver.Chrome() 
driver.get("http://www.yahoo.com") 
wget.download("http://www.yahoo.com", C:\\Users\\karanjuneja\\Downloads\\kj\\yahoo.mhtml") 

這工作和strores文件夾中的網頁的MHTML版本,但是當你打開文件,你只能找到代碼編寫的,它如何出現不是頁面線上。有什麼建議麼? 謝謝 Karan

+0

驅動程序命令不適用於我,但當我將它們評論出來時,第三個命令正常工作。只需要輸出路徑的起始引號。當他們需要時,你的例子中是否有缺失的代碼?我在驅動程序命令上遇到的錯誤是驅動程序無法識別。第一次使用wget,所以任何幫助表示讚賞。 – TMWP

回答

0

此代碼將幫助您創建一個網站的離線副本,您可以在沒有互聯網訪問的情況下進行瀏覽。

wget --mirror --convert-links --adjust-extension --page-requisites 
--no-parent http://example.org 

--mirror - 使(其中包括)下載遞歸。

--convert-links - 將所有鏈接(也包括CSS樣式表之類的東西)轉換爲相對的,所以它適合離線查看。

--adjust-extension - 根據文件的內容類型爲文件名(html或css)添加合適的擴展名。

- 頁面必備條件 - 下載正常顯示頁面所需的CSS樣式表和圖片等內容。

--no-parent - 當遞歸不上升到父目錄時。它將限制下載到網站的一部分很有用。

感謝Guy Rutenberg在他的論壇上提供的代碼也幫助了我。

+0

嗨Karthik,謝謝你的回覆。我無法理解在哪裏執行您提供的代碼?我可以在上面的Python代碼中嵌入此代碼嗎? –

+0

是的。您可以將其嵌入到您的代碼中。或者,您也可以使用下面的代碼。而不是wget -r你可以把我給你的一個 import os path = raw_input(「enter the url:」) os.system('wget -r -nd -l1 --no-parent -A mp3 %s'的%路徑) –