如何使電子郵件安全地使用HTML顯示在使用python的Web瀏覽器中?如何使用python使web瀏覽器的HTML安全?
顯示時不應遵循任何外部參考。換句話說,所有顯示的內容應該來自電子郵件,而不是來自互聯網。
除了垃圾郵件之外,應儘可能按照作者的意圖儘可能地顯示。
我想避免自己編碼。
需要最新瀏覽器(firefox)版本的解決方案也是可以接受的。
如何使電子郵件安全地使用HTML顯示在使用python的Web瀏覽器中?如何使用python使web瀏覽器的HTML安全?
顯示時不應遵循任何外部參考。換句話說,所有顯示的內容應該來自電子郵件,而不是來自互聯網。
除了垃圾郵件之外,應儘可能按照作者的意圖儘可能地顯示。
我想避免自己編碼。
需要最新瀏覽器(firefox)版本的解決方案也是可以接受的。
使用HTMLparser模塊或安裝BeautifulSoup,並使用它們來解析HTML並禁用或刪除標記。這會留下任何鏈接文本,但它不會被突出顯示,也不會被點擊,因爲您正在使用Web瀏覽器組件進行顯示。
您可以通過將<A></A>
替換爲<SPAN></SPAN>
並更改文字修飾以顯示鏈接過去的位置來更清楚地完成所做的操作。也許是一種不同於正常情況的藍色陰影,並且一個虛線的下劃線表示破碎。這樣你就可以更接近地按照意圖展示它,而不會誤導人們點擊不可點擊的內容。您甚至可以在Javascript或pure CSS中添加懸停,該懸浮彈出一個工具提示,解釋由於安全原因鏈接已被禁用。
類似的事情可以用<IMG></IMG>
標籤完成,包括用空白的矩形替換它們以確保頁面佈局接近原始。
我已經用Beautiful Soup做過這樣的東西,但是HTMLparser包含在Python中。在較老的Python distribs中,有一個htmllib現在已經被棄用了。由於電子郵件中的HTML可能不完全正確,因此請使用Beautiful Soup 3.0.7a,它更好地理解損壞的HTML。
我對「安全」的含義並不十分清楚。這是一個很大的話題...但是,它的價值:
在我看來,ActiveState Cookbook的stripping parser是最簡單的解決方案之一。你幾乎可以複製/粘貼課程並開始使用它。
看看評論以及。最後一個說它不再工作,但我也有這個在某個應用程序中運行,它工作正常。從工作中,我無法使用那個盒子,所以我必須在週末查看它。
只要確認該腳本確實不會再留下有效標籤,正如該評論者在該頁面上所述。 – ropable 2010-05-19 02:41:06
你可能想明確說明你的意思是「安全」。它看起來像你不想讓鏈接,但我認爲你也意味着你想從XSS等安全。 – 2009-10-22 10:03:29
你期望從基於Web的電子郵件閱讀器?我對更多和更不安全的解決方案感興趣。 – iny 2009-10-22 10:05:39