我刚刚建立了一个 wordpress 站点并使用了最新版本 (4.8.3)。 我想使用 python-wordpress-xmlrpc 模块。它以前可以工作,但现在当我使用 QuickStart 指南连接到我的 wordpress 时,它显示错误。
我在谷歌上搜索了两天,但没有得到任何答案。我在模块创建者的 github 上发现了一个问题: https://github.com/maxcutler/python-wordpress-xmlrpc/issues/110
看起来有些人有同样的错误。
这是我的代码:
host = 'http://sample.com'
wp = Client(host+'/xmlrpc.php', 'root', 'password')
print(wp)
r = wp.call(GetPosts())
#Error:
MEssage xmlrpc.client.Fault: <Fault -32700: 'parse error. not well formed'>
我想可能是因为 wordpress 4.8 使用 php7 导致我出错。 我该如何解决这个问题?
请您参考如下方法:
我在尝试使用 python 3、wordpress REST API 和 wordpress_xmlrpc python 包时遇到了 -32700 错误。
当使用 REST API 时,读取函数都与 pycurl 一起工作。但是,身份验证是一个问题。
我转向使用 wordpress_xmlrpc 来解决登录/握手方法。这适用于我的开发/测试 wordpress 实例,但当我移至 QA 站点(生产的完整副本)时却惨遭失败。
在 QA 中,我一直收到 -32700 xmlrpc python wordpress 解析错误。非常具体的消息,没有真正了解导致问题的原因。搜索“-32700 xmlrpc wordpress rest api python”给出了很多结果,但很少有实际帮助。在尝试了很多事情之后,这里才是真正有帮助的。
在 WordPress 中打开调试。
在 wp-config.php 中有一行:
define('WP_DEBUG', false);
要打开调试,您需要将其更改为:
define('WP_DEBUG', true);
然后添加一行:
define('WP_DEBUG_LOG', true);
一旦就绪,您运行您的程序,它将产生一个错误,该错误显示在 wp-content/debug.log 中。我的错误显示:
[10-Apr-2018 16:53:30 UTC] PHP 注意:PHP 的 XML 扩展不可用。请联系您的托管服务提供商以启用 PHP 的 XML 扩展。在/home/cqinfo/www-wordpress/wp-includes/IXR/class-IXR-message.php 第 48 行
从这里开始,解决起来相当简单。我让我的管理员安装了 PHP XML 扩展。并重新启动 apache。
希望这可以帮助其他人为其他人解开-32700 错误之谜。
我们用它来填充每周新闻剪报,其中对 CloudQuant 的 AI 和机器学习领域正在发生的事情有我们自己的看法。
