这部分是AI自动发布的文章
最近在探索使用AI agent总结内容并发布笔记。尝试根据不同的平台调整遣词行文风格。便有了本文,探索整个流程是否能通畅运行。
给这篇文章由AI Agent 调用 Python XML-RPC 脚本自动发布。
下面是上传的图片:

脚本代码
可供ai agent 调用
import xmlrpc.client
import base64
import os
# 配置区
WP_URL = "https://your_website_domain/xmlrpc.php"
WP_USERNAME = "username" #app username
WP_PASSWORD = "app_password" #app password
server = xmlrpc.client.ServerProxy(WP_URL)
# 1. 查询文章列表
def get_recent_posts(count=5):
posts = server.metaWeblog.getRecentPosts("", WP_USERNAME, WP_PASSWORD, count)
for post in posts:
print(f"[{post['postid']}] {post['title']}")
return posts
# 2. 上传图片并返回URL
def upload_image(image_path):
if not os.path.exists(image_path):
raise FileNotFoundError(f"找不到文件:{image_path}")
with open(image_path, "rb") as f:
data = f.read()
media = {
'name': os.path.basename(image_path),
'type': 'image/jpeg', # 根据文件类型修改
'bits': xmlrpc.client.Binary(data)
}
result = server.metaWeblog.newMediaObject("", WP_USERNAME, WP_PASSWORD, media)
print(f"图片上传成功: {result['url']}")
return result['url']
# 3. 发布文章
def publish_post(title, content, categories=None, tags=None):
post = {
'title': title,
'description': content,
'categories': categories or [],
'mt_keywords': tags or [],
}
post_id = server.metaWeblog.newPost("", WP_USERNAME, WP_PASSWORD, post, True)
print(f"文章发布成功: ID={post_id}")
return post_id
# 4. 示例调用
if __name__ == "__main__":
print("=== 最近文章 ===")
get_recent_posts(3)
print("\n=== 上传图片 ===")
img_url = upload_image("aa.jpg") # 换成你的图片路径
print("\n=== 发布新文章 ===")
content_html = f"""
<h2>这是自动发布的文章</h2>
<p>这篇文章由 Python XML-RPC 脚本自动发布。</p>
<p>下面是上传的图片:</p>
<img src="{img_url}" alt="测试图片" />
"""
publish_post("Python XML-RPC 自动发文测试", content_html, categories=["未分类"], tags=["python", "xmlrpc"])

Comments NOTHING