에는 몸집이 작은의 특정 스 니펫이 포함 된 상당히 큰 Plone 사이트 내의 모든 문서를 검색하고 싶습니다. .) 그런 다음 해당 html (제목을 버리십시오)을 변경하십시오.Plone 사이트의 페이지에서 프로그래밍 방식으로 html 찾기 및 변경
어떻게 해야할지에 대한 포인터는 대단히 감사합니다!
에는 몸집이 작은의 특정 스 니펫이 포함 된 상당히 큰 Plone 사이트 내의 모든 문서를 검색하고 싶습니다. .) 그런 다음 해당 html (제목을 버리십시오)을 변경하십시오.Plone 사이트의 페이지에서 프로그래밍 방식으로 html 찾기 및 변경
어떻게 해야할지에 대한 포인터는 대단히 감사합니다!
을 확인하고 실행하지 않은 :
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()
당신이 필요로하는 경우를 이 작업을 여러 번 수행하려면 작업을 단순화하는 custom index을 추가하는 것이 좋습니다.
나는 한 동안 그것을 시도하지만,이 코드 당신은 browserview를 작성 (또는 디버그 모드에서 인스턴스를 실행)해야 GoReplace
고마워요! 또한 (html 서식을 약간 정규식으로 잡으려고 어렵습니다)이 대한 lxml.html 사용할 수 있습니다. Plone에서 모듈을 사용하는 방법에 대한 문서가 있습니까? – dimboo
빌드 아웃에 포함시키는 방법은 다음과 같습니다. http://pypi.python.org/pypi/plone.recipe.lxml. 그런 다음 코드에서 가져 와서 사용하면됩니다. –