如何实现导出公众号时图片的自动上传

基本原理

公众号图片的自动上传,基本原理为:
1,在 “导出” 菜单上选择 “导出为微信公众号格式”
2,ME 自动将里面包含的图片转为 Web 端可直接访问的 URL
3,粘贴到微信公众号后台的时候,微信公众号后台会自动下载这些图片,从而实现自动上传

注意,如果微信公众后台提示复制图片失败:
1,删除内容后,重新粘贴,多试几次
2,如果非 Pro 版提供的云端支持,请确保对应的 URL 没有防盗链、跳转等问题
3,如果是 Pro 版的云端支持,多试几次之后,仍然全部提示失败,建议在 App 的 “偏好设置” 内将 MarkEditor URL 的节点设定为国内。

由于此功能依赖于微信公众号后台自身的机制,虽然概率不大, 但不排除有突然不可用的情况。如果以上的尝试都失效了,建议就先不要尝试了,避免时间的浪费,直接先手工上传图片即可。

Pro 版

不需要特别处理,默认会通过 MarkEditor 自带的云端进行中转。

Senior 版

需要绑定七牛,具体的教程参考《如何绑定七牛》
此时,复制微信公众号格式的同时,会进行一次同步,同步之后,图片的 URL 会替换为七牛上的 URL。

注意,如果此时提示贴图失败,考虑以下因素:
1,图片本身是否太大?如果太大,自己手工进行图片的压缩,控制大小;
2,是否当前的同步还没有完成?没有同步完成,图片的 URL 实际上是不可访问的。 特别是第一次同步的时候,会同步当前整个工作目录到七牛,根据当前文件数量多少,耗时会不一样 (同步完成后,会有提醒)。

注意事项

图片『上传』到微信,成功与否,取决于微信服务器从 MarkEditor 服务器上抓取的线路质量。同样,其它新媒体的编辑器也是一样的技术逻辑。不同新媒体与 MarkEditor 服务器的线路质量,是不完全一致的,其本身的抓取机制也未必一样(比如 timeout);所以,有可能会出现在不同的时间段内,比如知乎上文章的图片可以抓取成功,而微信公众号反复尝试后,仍然提示失败。

一般情况下不会出现,出现了可能会有一两张图片反复尝试几次,都不能自动上传,此时,手工在微信编辑器内上传一次就好了。

如果图片比较多,有因为线路的质量问题导致图片粘贴失败的,可以考虑 ImageBox.app 作为替代方案,将腾讯云作为图床,在 ImageBox 中,图片导出为 图床 URL 的同时,进行图片的压缩,以保证图片本身的尺寸不会过大。

如何 Debug?

快捷键 Shift + Command + C 可以打开 MarkEditor 的数据目录,在“导出为微信公众号格式”的时候,这个目录会自动产生一个文件名为 “wechat_format_source.html” 的 HTML 文件,里面是最终内容的原始代码。

1,你可以查看里面的图片地址是否是外部 Web 端的 URL,比如 Pro 版的会是以 https://www.markeditor.com/file/get/2309e4da32c9a888597accd67ffc912c 开头。
2,这些 URL 是否都是可以访问的?

如果 1 & 2 都没有问题的,且结果仅仅表现为图片粘贴失败,说明从 MarkEditor 这里产生的格式内容是正确的;反之,则考虑在 MarkEditor 中的比如第三方图床(七牛)的配置是否正确、同步是否完成。

2018-05-13 13:52
Comments
Write a Comment