我们需要将在TinyMCE中生成的过时字体标记迁移到CMS中的新span标记。
<font face="timesnewroman,times" size="7"><child>something</child></font>
<span style="font-family: timesnewroman,times; font-size: 12pt;"><child>something</child></span>
如何使用BeautifulSoup优先使用? (目前我使用的是3.2.1版本) 如果Python有任何替代字体的方法,请告诉我 - &gt;如上所述设置样式属性的span标记?我知道很少的方法,如replaceWithChildren,但不会做我需要的。有什么想法吗 ?
答案 0 :(得分:1)
import BeautifulSoup as bp
soup = bp.BeautifulSoup('<font face="timesnewroman,times" size="7"><child>something</child></font>')
for t in soup.findAll('font'):
t['style'] = 'font-family: %s; font-size: %s' % (t['face'], t['size'])
del t['face']
del t['size']
t.name = 'span'
print t
输出:
<span style="font-family: timesnewroman,times; font-size: 7"><child>something</child></span>
这是基本的想法。显然,您应该检查属性是否存在,否则将引发异常。