2012-08-22 48 views
2

我有一個動態內容由抓取工具提供。但有時這些內容在HTML中有問題(沒有關閉標籤,標籤關閉而沒有打開等)。所以,這個錯誤的內容打破了整個頁面,因爲關閉或打開了他們不應該的東西。沙箱爲HTML,無iframe?

HTML的常見錯誤。

<div><p>foo</p>

<p>bar</p></div>

<p><a>link</p></a>

如何把這個內容在沙箱中,以不破的頁面?由於SEO而無法使用iframe。

+1

JavaScript是一個選項嗎? – pimvdb

+0

優選沒有。要做任何處理程序,最好在後端或「middlewire」中執行。 –

回答

1

如何處理動態內容以找出哪些標籤尚未關閉,以及(使用堆棧)在最後或必要時添加它們(以確保正確的標籤嵌套)?但是,如果你確實採取這種做法,我建議執行這個操作客戶端。

+0

如果我在客戶端執行此操作,頁面將會閃爍,因爲JavaScript將在文檔準備好的情況下運行。我已經知道如何在服務器端使用BeautifulSoup(Python)來做到這一點。但是想知道是否有某種方法可以在HTML中使用它來不使用不必要的處理。 –