繁体   English   中英

如何使用Python解析WordPress CSV导出

[英]How to parse a WordPress CSV export using Python

我需要将内容从WordPress导入基于Python的CMS Plone中,并且使用“;”将posts表转储为一个巨大的CSV原始文件。 作为分隔符。

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

例如,当解析器遇到<p>&nbsp;</p>之类的东西时,它将分号解释为字段定界符,而我最终得到的项目多于字段,且字段内容错误。

还有其他选择可以解决此类问题吗? 用正则表达式处理行对我来说似乎很可怕。

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

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

在此处输入图片说明

我进行了一次测试,读取了1,000行,但没有发现任何错误。

CSV模块提供了escapechar格式参数,该参数允许您转义定界符(已将其设置为分号)。 如果可以在对csv.reader()的调用中提供escapechar='\\\\' ,则可以将CSV文件中的字符\\替换为\\\\ ,并替换&nbsp; csv.reader() &nbsp\\; (使用文本编辑器的“查找/替换”选项)。

对于较小的网站,另一种选择是使用pywordpress ,这是WordPress XML-RPC API的pythonic接口。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM