几周前,我编写了一个 Python 脚本,该脚本将一些内容发布到了 Wordpress 博客,但自从上周它停止工作(我没有更改任何内容),现在当我运行脚本时,我收到了这个错误:
File "C:\Python27\lib\xmlrpclib.py", line 557, in feed
self._parser.Parse(data, 0)
ExpatError: junk after document element: line 2, column 0
我用来将所需内容发布到 Wordpress 的功能是:
post_id = server.wp.newPost(blog_id, user, passw, content)
它曾经工作过,因为它(显然)无缘无故开始崩溃。
¿ 您现在知道导致此错误的原因是什么吗?¿ 我的 Wordpress 可能已被感染(我已经检查过)?
谢谢,如果您需要更多代码来检查我会发布的内容,并为我糟糕的英语感到抱歉。
重要编辑:我之前没有提到这一点,但是该脚本与其他 wordpress 博客完美配合,它只会在我尝试发布到我为其编写脚本的 WP 博客时崩溃(这就是我认为该网站可能被感染的原因) .
当代码工作时,data
使用的变量self._parser.Parse(data, 0)
具有以下内容:
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value>
<string>90</string>
</value>
</param>
</params>
</methodResponse>
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value>
<int>90</int>
</value>
</param>
</params>
</methodResponse>
编辑:库使用数据变量,我不知道它应该包含什么,但调试我发现当脚本崩溃时它具有以下内容:
<br />
<b>Warning</b>: strpos() [<a href='function.strpos'>function.strpos</a>]: Empty delimiter in <b>/PATH/wp-includes/class-wp-xmlrpc-server.php</b> on line <b>3954</b><br />
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/PATH/wp-includes/class-IXR.php</b> on line <b>471</b><br />
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/PATH/wp-includes/class-IXR.php</b> on line <b>472</b><br />
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /PATH/wp-includes/class-wp-xmlrpc-server.php:3954) in <b>/ANOTHER_PATH/public_ht
正如我所说,我不知道“数据”应该包含什么,当代码工作时,我从未检查过它的内容是什么。