使用wordpress4.8的Python wordpress xmlrpc -32700错误

时间:2017-11-06 11:19:36

标签: php python wordpress ubuntu

我只是构建一个wordpress网站并使用持续版本4.8.3

我想使用python-wordpress-xmlrpc模块,一年前我使用这是工作

但是,当我使用QuickStart指南尝试连接我的wordpress时,它会得到erorr

我谷歌两天,但没有任何ans,我发现模块创建者git-hub发布 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'>

我想也许是php7环境下的wordpress 4.8会出错。

有谁可以告诉我如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

试试这个

    from wordpress_xmlrpc import Client, WordPressPost
    from wordpress_xmlrpc.methods import posts

    host = 'http://sample.com'
    wp = Client(host+'/xmlrpc.php', 'root', 'password')
    r = wp.call(posts.GetPosts())

答案 1 :(得分:0)

看起来服务器上没有安装PHP XML扩展。

Ubuntu的:

sudo apt-get install php-xml

sudo service apache2 restart

这解决了我的问题。

答案 2 :(得分:0)

在尝试使用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 Notice: PHP's XML extension is not available. Please contact your hosting provider to enable PHP's XML extension. in /home/cqinfo/www-wordpress/wp-includes/IXR/class-IXR-message.php on line 48

从这里解决起来相当简单。我让我的管理员安装了PHP XML扩展。 AND RESTART apache。

希望这有助于其他人解决其他人的-32700错误之谜。

我们使用它来填充每周新闻剪辑,这些剪辑对我在CloudQuant的AI和机器学习世界中正在发生的事情有自己的看法。