網(wǎng)站的大框架下有定義的字體,包括字體大小和顏色等,用戶發(fā)布文章的時(shí)候可能是從其他網(wǎng)站復(fù)制過來(lái)的文本,復(fù)制的過程也保留了字體描述信息。當(dāng)文章在頁(yè)面上顯示的時(shí)候,默認(rèn)先會(huì)使用文章中定義的字體,如果文章中字體不存在的話才顯示大框架下定義的全局字體。因此網(wǎng)站的內(nèi)容就會(huì)顯得很亂,有的文章字體很大,有的文章字體很小,不美觀。能統(tǒng)一的話就好了!
我對(duì)html和css等不是很熟,不知道是否能設(shè)置一下讓文章中定義的字體內(nèi)容失效。
笨人有笨辦法,統(tǒng)一修改文章,將用戶的對(duì)字體的定義全部刪除!哈哈!如果手工完成的話,這可是一個(gè)相當(dāng)繁重的任務(wù),要首先預(yù)覽頁(yè)面,如果不統(tǒng)一的話就修改字體,幸好編輯器里面有個(gè)“清除格式”選項(xiàng),全選文本,點(diǎn)一下就OK了,然后再保存……也很麻煩
如果僅僅是修改字體的話,最省事的方法當(dāng)然是直接修改數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)將文章提取出來(lái),刪除和字體相關(guān)的標(biāo)簽,然后再寫回?cái)?shù)據(jù)庫(kù)。
專門查了一下html參考手冊(cè),對(duì)字體的定義有兩種方法:
1.是用<font>標(biāo)簽,例如:
代碼如下:
<p>
<font size="2" face="Verdana">
This is a paragraph.
</font>
</p>
<p>
<font size="3" face="Times">
This is another paragraph.
</font>
</p>
這種方法是不推薦使用的
2.使用style定義,例如:
代碼如下:
<p style="font-family:verdana;font-size:80%;color:green">
This is a paragraph with some text in it. This is a paragraph with some text in it. This is a paragraph with some text in it. This is a paragraph with some text in it.
</p>
只要將字體的定義部分刪除就可以了,用python的正則表達(dá)式模塊進(jìn)行替換無(wú)壓力:
代碼如下:
def format(data):
'''將font標(biāo)簽和style標(biāo)簽全部刪除'''
p = re.compile(r'<font .*?>|</font>|style=/".*?/"')
ret = p.sub('',data)
if ret != data:
return retelse:
return None
python處理數(shù)據(jù)庫(kù)相關(guān)操作時(shí)要注意更新數(shù)據(jù)方法,可以參考這篇文章:http://www.cnblogs.com/ma6174/archive/2013/02/21/2920126.html
新聞熱點(diǎn)
疑難解答
圖片精選