2012-03-14 49 views
0

我有~3600個html文件,裏面有大量的圖片標籤。我希望能夠捕獲這些文件中使用的所有屬性值,並將它們聚合到文本文件中,然後我可以刪除重複項並查看總共有多少個圖像文件名。如何在一組html文件中編譯唯一圖像文件名列表?

我使用的BBEdit,我可以很容易地使用正則表達式和多文件搜索,找到所有的圖像引用(18673),但我不想與任何東西來替代它們 - 相反,我想從他們捕捉BBEdit搜索結果「註釋」並將它們推送到另一個文件中。

這是可以AppleScripted的東西嗎?或者還有其他方法可以達到同樣的目的嗎?

+0

我想這樣做的原因是我有一個網站,其圖像數據庫中有大約15,000個圖像,其中大量數據幾乎肯定是多餘的,需要清除。我想創建一個冗餘位置和總體範圍的圖片。 – 2012-03-14 17:32:12

回答

1

你在這裏有一個很高的任務,因爲你需要解決很多問題。爲了給你一個開始,下面是關於讀取一個html文件並將所有src圖像放在applescript列表中的建議。你必須做得比這更多,但這是一個開始。

首先,您可以將普通文本的html文件讀入applescript。像這樣的東西會得到一個HTML文件的文字...

set theFile to choose file 
set htmlText to read theFile 

一旦你有文成的AppleScript,你可以使用文本項分隔符搶SRC圖像。這是一個例子。它應該工作,無論多麼複雜的HTML代碼...

set htmlText to "<img src=\"smiley.gif\" alt=\"Smiley face\" height=\"42\" width=\"42\" /> 
<img src=\"smiley.gif\" alt=\"Smiley face\" height=\"42\" width=\"42\" /> 
<img src=\"smiley.gif\" alt=\"Smiley face\" height=\"42\" width=\"42\" />" 

set text item delimiters to "src=\"" 
set a to text items of htmlText 
if (count of a) is less than 2 then return 

set imageList to {} 
set text item delimiters to "\"" 
repeat with i from 2 to count of a 
    set thisImage to first text item of (item i of a) 
    set end of imageList to thisImage 
end repeat 

set text item delimiters to "" 
return imageList 

我希望幫助!

+0

偉大的建議。謝謝 :) – 2012-03-15 18:42:37

相關問題