以编程方式查找和更改my Plone站点页面上的html

以编程方式查找和更改my Plone站点页面上的html,plone,Plone,我想搜索一个相当大的Plone站点中的所有文档,该站点的正文中包含一段特定的html(列出带有标题的项目,呃…),然后更改该html(删除标题) 关于如何做到这一点的指点非常感谢 我已经有一段时间没有尝试过了,但是请检查一下您应该创建一个browserview(或在调试模式下运行实例)并运行以下代码: from Products.CMFCore.utils import getToolByName import re ctool = getToolByName(context, 'porta

我想搜索一个相当大的Plone站点中的所有文档,该站点的正文中包含一段特定的html(列出带有标题的项目,呃…),然后更改该html(删除标题)


关于如何做到这一点的指点非常感谢

我已经有一段时间没有尝试过了,但是请检查一下

您应该创建一个browserview(或在调试模式下运行实例)并运行以下代码:

from Products.CMFCore.utils import getToolByName
import re


ctool = getToolByName(context, 'portal_catalog')
results = ctool.searchResults(portal_type='Document')
for i in results:
    obj = i.getObject()
    text = obj.getField('text').get(obj)
    <find and remove your html using the regular expression module>
    obj.reindexObject()
从Products.CMFCore.utils导入getToolByName
进口稀土
ctool=getToolByName(上下文“门户目录”)
results=ctool.searchResults(portal_type='Document')
对于结果中的i:
obj=i.getObject()
text=obj.getField('text').get(obj)
obj.reindexObject()

如果您需要多次执行此操作,您可以评估以添加简化工作的选项

谢谢!我也可以使用lxml.html来实现这一点(因为正则表达式很难捕捉html格式)。有关于如何在Plone中使用该模块的文档吗?以下是如何将其包含在构建中:。之后,您只需将其导入代码并使用它。