如果要修改文本字段的值,您需要使用该字段的raw
获取值来获取该值。
>>> item.getRawText()
>>> ...
这将返回值untouched
,那么你可以修改文本,并将其保存。
注:
默认的Plone使用UID来处理内部链接(检查linkintegrity功能),所以你可能无法得到从原始的吸气相对路径,但../resolveuid/$(UID)
像URL。
编辑:
这可以帮助你重写的链接。
>>> import re
>>> from lxml import html
>>> resolveuid_re = re.compile('^[./]*resolve[Uu]id/([^/]*)/?(.*)$') # Regex resolving the uid from a path.
获取从文本中所有链接
>>> raw_text = obj.getRawText()
>>> dom = html.fromstring(raw_text)
>>> links = dom.xpath('//a/@href')
>>> links
['resolveuid/fbb9304e48b24a30ac7ba31eb5be2cb6']
获得UID(S)
>>> uid = resolveuid_re.match(links[0]).group(1)
>>> uid
fbb9304e48b24a30ac7ba31eb5be2cb6
现在,你可能会发现并更换UID(一个或多个),存储他们就大功告成了。
是不是很清楚,我如何将这些链接最初由。他们是使用uid还是什么的内部链接? –
链接是UID – joeforker