如何使用Python解析WordPress CSV导出

2024-04-24 06:06:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要将内容从WordPress导入到Plone中,这是一个基于Python的CMS,我有一个posts表的转储文件,它使用“;”作为分隔符。在

问题是来自csv module的标准CSV读取器不够智能,无法解析行内的HTML内容(post_content字段)。在

例如,当解析器遇到类似<p>&nbsp;</p>的情况时,它会将分号解释为字段分隔符,结果得到的项目多于字段,并且字段的内容不正确。在

有没有其他办法可以解决这类问题?用正则表达式处理行对我来说似乎相当可怕。在


Tags: 文件csv内容标准cms智能htmlplone
3条回答

对于较小的站点,另一个选择是使用pywordpress,这是WordPressXML-RPC API的python接口。在

CSV模块提供^{}格式参数,该参数允许您转义分隔符(已设置为分号)。如果您可以在对csv.reader()的调用中提供escapechar='\\',那么您可以将CSV文件中的字符\替换为\\,并将{}替换为{}(使用文本编辑器的find/replace选项)。在

经过一些额外的研究,我通过阅读PEP 0305的文本发现了excel-tab方言(它建议在Python中添加cvs模块);这在模块文档中提到过,但我一开始没有注意到。在

然后,我使用制表符作为分隔符(\t)重新导出了文章。在

enter image description here

我做了一个测试,读取了一批1000行,没有发现任何错误。在

相关问题 更多 >