在野外有什么好的python css inlined模块用于html吗?

时间:2013-04-17 18:12:07

标签: python css email

我想使用python内联任意网页。我已经尝试了几个库,但它们都没有在“真实”内容上运行良好,例如nytimes采用一个复杂的例子。另外,我也希望外部样式表也被内联。你有什么建议吗?这是我目前的测试代码:

import requests
import codecs
from html5tidy import tidy

url = "http://www.nytimes.com/"

r = requests.get(url)
src = tidy(r.text)


from pypremailer import Premailer
p = Premailer(src)
output = p.premail()
f = open("/tmp/pypremailer.html", "w")
f.write(output)
f.close()

from premailer import transform
output = transform(src)
f = open("/tmp/premailer.html", "w")
f.write(output)
f.close()

import pynliner
output = pynliner.fromString(src)
f = open("/tmp/pynliner.html", "w")
f.write(output)
f.close()

from inlinestyler.utils import inline_css
output = inline_css(src)
f = open("/tmp/inlinestyler.html", "w")
f.write(output)
f.close()

感谢

2 个答案:

答案 0 :(得分:1)

Pynliner不再处于积极发展状态not ready for python3。所以我会建议使用toronado

答案 1 :(得分:0)

Pynliner确实可能最适合网址,特别是因为它能够处理CSS样式表标签..

from pynliner import Pynliner
p = Pynliner()
p.from_url('http://mashable.com/2014/06/03/iwilllisten-philadelphia/')
p.run()

理论上的......实际上你会遇到一些需要解决的奇怪的BeautifulSoup问题。