使用Metaweblog上传MD文件到博客园遇到的几个问题

can't open file 'upload.py': [Errno 2] No such file or directory

q1

分析:upload.py文件在pycnblog源代码文件夹下,而cmd命令的执行路径是C:\WINDOWS\System32,所以提示找不到文件。

解决方法:

1、首先,以管理员身份打开cmd窗口。

a11

2、然后,找到pycnblog源代码所在的路径,并在该路径下重新执行命令。

a12

AttributeError: module 'asyncio' has no attribute 'run'

分析:这是由于Python中asyncio版本不兼容导致的。

解决方法:(任选一种方法即可)

  • 法一:将Python版本升级至3.7及以上。
  • 法二:打开upload.py文件,将报错的run函数注释或者删除,并在下方添加以下语句。

`loop = asyncio.get_event_loop()

result = loop.run_until_complete()`

a2

AttributeError: module 'asyncio' has no attribute 'create_task'

分析:这同样是由于Python中asyncio版本不兼容导致的。

解决方法:(任选一种方法即可)

  • 将Python版本升级至3.7及以上。
  • 打开upload.py文件,将报错的create_task函数改成ensure_future函数。

a3

xmlrpc.client.Fault: <Fault 401: '请配置正确的用户名与访问令牌(access token), 密码登录已取消,请在密码框中输入请访问令牌......'>

分析:博客园取消了密码登录,改成了token登录。

解决方法:根据提示,打开源码文件夹中的config.yaml配置文件,把里面的password字段中原来写的密码值改成博客园的token就行。token在博客园设置页面最底部其他设置那栏里面,如果之前没有生成过token,新生成一个即可。

1、在首页点击管理;

a41

2、点击设置;

a42

3、鼠标拖到页面最下方,找到其他设置,将它点开,MetaWeblog访问令牌就是要找的token。

a43

4、将config.yaml中的password字段值改成该token值。

posted @ 2022-11-16 20:12  大雄的叮当猫  阅读(112)  评论(0编辑  收藏  举报