我正在尝试使用 Python 中的 CSS 文件来帮助色盲人士。我需要进入每个选择器块并更改“背景:”和“颜色:”。我尝试使用 CSS 解析器,tinycss
但他们并没有专注于获取选择器。
示例输入:
body {background:#fff; color:#ccc}
并输出:
body {background:#000; color:#aaa}
我通过使用正则表达式解决了这个问题。所以我最终制作了自己的解析器。我形成了一个正则表达式来搜索CSS文件中的#XXX、#XXXXXX、rgb(X,X,X)、hsl(X,X,X)等颜色模式,维护了一个列表来保持它们所在的位置CSS 文件。然后我只是在列表指定的位置重新编写了所有颜色。这是我所做的最好的总结。如果您需要非常详细的解释,请添加评论。谢谢你。
尝试这个:
parser = CSSParser()
# optionally
parser.setFetcher(fetcher)
sheet = parser.parseFile('test1.css', 'ascii')
print sheet.cssText
在 css 处理中使用非常简单。
使用您可以使用的选择器cssutils.css.SelectorList
和cssutils.css.Selector