2011-07-03 38 views
0

我試圖找到一種方法來自動從網頁上下載所有鏈接,但我也想重命名它們。例如:從重命名的網頁下載鏈接

<a href = fileName.txt> Name I want to have </a> 

我希望能夠得到一個名爲'我想要的名字'的文件(我不擔心擴展名)。

我知道我可以得到頁面源代碼,然後解析所有的鏈接,並手動下載它們,但我想知道是否有任何內置的工具。

lynx --dump | grep http:// | cut -d ' ' -f 4 

將打印可以批量獲取與wget的所有環節 - 但有沒有辦法重命名的飛行聯繫?

回答

0

我通過完全(用記事本+的內置轉換)轉換網頁爲Unicode在第一輪解決了這個問題

然後我寫了使用的貓,awk和wget來獲取所有的小shell腳本數據。

不幸的是,我無法自動化該過程,因爲我沒有找到任何工具可以將整個頁面從KOI8-R轉換爲unicode。

1

我懷疑這個開箱即用。我建議你用Python或類似語言編寫腳本來下載頁面,並加載源代碼(嘗試使用Beautiful Soup庫進行容忍解析)。然後,遍歷源代碼來獲取鏈接的屬性和文本,然後下載帶有所需名稱的文件是一件簡單的事情。除了美麗的湯(如果你需要能夠解析潦草的HTML),所有你需要的是用Python構建的。

+0

感謝您的建議使用什麼語言/框架。另一個問題是整個頁面是否採用非Unicode編碼(KOI8-R),您知道Beatuful Soup是否支持各種編碼? – iliaden

+0

如果你看看它的首頁上的第一段幾段,它說它嘗試自動檢測,如果失敗,你可以指定一個源編碼,並且它轉換爲UTF-8。 –