WSGI评论中间件
项目描述
WSGI评论中间件
使用方法
创建一个包装您应用程序的解说者中间件工厂。目前,解说者只处理评论。向解说者构造函数传递一个数据库(pickle的路径)和一个模式。模式的形式为
<URL模式>#<xpath模式> -> URL
URL模式是一个与请求的PATH_INFO匹配的Python正则表达式。
xpath模式是您想在页面上放置评论的位置。有关xpath表达式的更多信息,请参阅https://w3schools.org.cn/XPath/。
URL是一个Python字符串模板,用于替换URL正则表达式中的组和找到的节点中的元素属性。元素属性通过名称引用(${id}、${class}等),组通过编号引用(${1}、…)。
示例
参考实现示例在解说者.ini文件中。这使用以下模式
commentator.pattern = (.*)#.//div[@id='comment_on_this'] -> ${1}
这个模式的意思是
评论每个PATH_INFO (.*)
将渲染的内容模板附加到 div[@id='comment_on_this']
将PATH_INFO作为规范URL引用 ${1}
要评论每个HTML页面的body末尾,您将使用
commentator.pattern = (.*)#.//body -> ${1}
在.ini文件中的更复杂示例,已注释,用于与bitsyblog一起使用
commentator.pattern = /blog/.*#.//div[@class='blog-entry'] -> /blog/${id}
这个模式的意思是
评论博客下的所有路径
将评论放在每个 div[@class='blog-entry'] 的末尾
从 div 的id获取URI,而不是从 PATH_INFO 获取
待办事项
这是一个非常早期的版本。如果有人需要,我很乐意在这个项目上投入更多时间。一些未解决的问题
修复了lxml的奇怪问题,其中你必须为元素使用.//
允许对多个资源进行评论(每个实例多个模式)
锁定pickle文件
修复couch……不确定出了什么问题
允许使用CSS类,而不仅仅是xpath
–
项目详情
commentator-0.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0898f004849eaab1fab72b0235721961a3df9d82a45b70347258b4cc2f72a950 |
|
MD5 | 48730b75e48be7d8cb9248ff0ba7748e |
|
BLAKE2b-256 | d88c9519668b415d9bb7ccd4b56e00ec86d86b3049f7f68e1005b728a269e1c2 |