【问题标题】:Post HTML data via XMLRPC in Python?在 Python 中通过 XMLRPC 发布 HTML 数据?
【发布时间】:2023-04-03 17:26:01
【问题描述】:

我正在用 Python 编写一个小脚本来连接并将内容发布到我的 WordPress 博客。 https://github.com/maxcutler/python-wordpress-xmlrpc 非常简单

但是,当我尝试输入 HTML 数据时,例如:

<b>Hello</b>

它完全出现在 WordPress 帖子中(我从可视化编辑器中观看它,我需要通过将数据复制到 HTML 模式来重新格式化它以获得预期的结果。

我应该如何处理我的 python 脚本?

非常感谢

【问题讨论】:

  • wordpress XMLRPC 支持你想要的吗?你使用的 Python 库是否支持你想要的?如果是这样,文档应该会告诉您如何操作。
  • 我认为是的,因为我尝试过基于XMLRPC 的桌面应用程序,它可以完美地发布HTML。我认为问题在于从 Python 发送的数据的编码/解码,但仍然没有弄清楚。谢谢。

标签: php python wordpress xml-rpc


【解决方案1】:

您上传的 HTML 数据是否已经将尖括号转义为 HTML 实体? IE。 变成 >

这将导致您描述的行为。可视化编辑器将显示看起来像原始 HTML 的内容,而不是呈现 HTML 的结果。

要解决此问题,要么 (i) 阻止该编码,要么 (ii) 快速而肮脏的方法,在提交给 API 之前对 HTML 进行搜索和替换。大致如下:

html = html.replace('&lt;', '<')
html = html.replace('&gt;', '>') 

应该可以解决问题。

【讨论】:

  • 嗨乔纳森,我尝试 BeatifulSoup 在发送之前对其进行编码,它似乎可以工作但不稳定,有时我收到这样的错误:TypeError: cannot marshal 对象
猜你喜欢
  • 2023-02-18
  • 2023-03-17
  • 2012-03-02
  • 2011-01-14
  • 2015-10-04
  • 2015-09-26
  • 1970-01-01
  • 1970-01-01
  • 2013-01-19
相关资源
最近更新 更多