基于Python使用永中文档转换服务的方式

作者:falling2021 时间:2021-09-29 12:26:12 

因为工作需要,最近开始学习Python;而项目上用到了永中文档转换服务,就想着要不要拿这个练练手。仰仗于Python的易用性,不一会就完成了。现在总结一下,作为二者的简单学习笔记。

1 上传文件再转换

查看了对应的接口文档后,先来上传一个文件试试:

def upload():
   url = 'http://172.18.21.87:48080/fcscloud/file/upload'
   header = {"Content-Type": "multipart/form-data"}
   file = {"file": open('score.xlsx', 'rb')}
   result = requests.post(url=url, files=file).json()
   print(json.dumps(result, sort_keys=True, indent=2, ensure_ascii=False))

基于Python使用永中文档转换服务的方式

操作成功,文件已经上传,data里就是文件的相对路径了;知道返回数据之后,就可以再调用convert接口进行转换:

def upload():
   url = 'http://172.18.21.87:48080/fcscloud/file/upload'
   header = {"Content-Type": "multipart/form-data"}
   file = {"file": open('score.xlsx', 'rb')}
   result = requests.post(url=url, files=file).json()
   return result['data']['data']
def convert(srcRelativePath):
   url = 'http://172.18.21.87:48080/fcscloud/composite/convert'
   data = {'convertType': 61, 'srcRelativePath': srcRelativePath}
   result = requests.post(url=url, data=data).json()
   print(json.dumps(result, sort_keys=True, indent=2, ensure_ascii=False))
if __name__ == '__main__':
   convert(upload())    

这边改动一下,把upload接口返回的结果,作为参数传给convert,并且指定convertType也就是转换类型(针对office文件可以用61),同样返回一个json结果。

基于Python使用永中文档转换服务的方式

json结果中包含了一些基本信息,如转换时间、文件信息、转换类型、及错误代码等等;而viewUrl就是文档在线预览的地址,复制到浏览器打开看下

基于Python使用永中文档转换服务的方式

2 复合型接口

刚才是先上传文件,再进行转换的,有没有更简单的办法合二为一呢?永中文档转换服务就提供了这样的复合型接口:

def upload_and_convert():
   url = 'http://172.18.21.87:48080/fcscloud/composite/upload'
   header = {"Content-Type": "multipart/form-data"}
   file = {"file": open('score.xlsx', 'rb')}
   data = {"convertType": 61,                   #转换类型
           "wmColor":"blue",                    #水印颜色
           "wmContent":"永中文档转换服务",       #水印内容
           "wmSize":"50",                       #水印大小
           "wmRotate":0}                        #水印角度
   result = requests.post(url=url, files=file, data=data).json()
   # print(result)
   print(result['data']['viewUrl'])

根据上文里展示里的json结果,就可以丰富场景和业务了,比如根据错误代码来判断是否转换成功等等,这边为了展示效果,暂时没有考虑一些异常,只取viewUrl预览;同时在参数中,额外加了一些水印相关参数,看看水印的效果如何:

基于Python使用永中文档转换服务的方式

3 针对在线文档的转换接口

考虑到现在很多文件都是在线的,而不手动上传,永中文档转换服务还提供了针对在线文档的转换接口:

def http_file():
   url = 'http://172.18.21.87:48080/fcscloud/composite/httpfile'
   data = {"convertType": 61,
           'fileUrl': "http://172.18.21.87:48080/fcscloud/view/preview/gN-L5i-rqfV3L-5YwdyhbocM4AFZ1qLaNOfR58wqmPzq5yl6Ozaox5FtkOeT3U2dcGH7iZIGEkHe2cYS19931fYVW1WmGxqScQcqTmqfF4k0XJ0n9T43tS0XAWUC9i7ylCA8riwx8vqdy7cdU_MPpdgABhrxJFXkl6fhGj__qRG6-3WWebp0p1RxMpuuGaZNpYzDMjwIfyBsOskCvCMmx1Zm9_hzBCke2CNkWIw2a6lrQXYRDSmEwT8IHxRFsYnKfQ0RnNAc5xTKZVi4ovzMANI5IY9vfOIBLjZyTH4XSj9aAzvjNn69flAzLSbU4aGzgU3VyTFbTwIO3jgfWCPmDYBxOikkjBh7bji6xtunWsA=/"}
   result = requests.post(url=url, data=data).json()
   print(result['data']['viewUrl'])

同样只取viewUrl预览,在浏览器中访问链接

基于Python使用永中文档转换服务的方式

如果出现以下的错误,说明无法下载到在线文件,想想这也很合理:如果都无法获取文件,又何如进行转换和预览呢?

基于Python使用永中文档转换服务的方式

4 小结

来源:https://juejin.cn/post/7094086748778528782

标签:Python,永中文档,转换,服务
0
投稿

猜你喜欢

  • Python第三方库face_recognition在windows上的安装过程

    2023-07-27 02:51:29
  • Linux ORCLE数据库增量备份脚本

    2009-11-21 09:43:00
  • python获取字符串中的email

    2021-04-23 21:23:29
  • python-OpenCV 实现将数组转换成灰度图和彩图

    2023-07-22 11:22:19
  • pygame游戏之旅 如何制作游戏障碍

    2021-03-05 00:16:28
  • Python中的变量及简单数据类型应用

    2021-06-13 09:45:26
  • 浅谈Python之Django(三)

    2021-07-07 00:38:25
  • Python中的字符串切片(截取字符串)的详解

    2023-07-23 20:37:59
  • python列表的常用操作方法小结

    2023-06-21 16:14:34
  • Pyinstaller+Pipenv打包Python文件的实现示例

    2021-06-11 01:49:51
  • Python实现Kerberos用户的增删改查操作

    2023-07-29 09:39:52
  • 2009年情人节网站logo欣赏

    2009-02-15 12:13:00
  • python中xlutils库用法浅析

    2023-06-05 15:22:26
  • python设置检查点简单实现代码

    2023-09-25 19:08:44
  • Python实现获取汉字偏旁部首的方法示例【测试可用】

    2022-10-26 16:42:16
  • CentOS下php使用127.0.0.1不能连接mysql的解决方法

    2023-11-15 08:25:52
  • 让插入到 innerHTML 中的 javascript 跑起来

    2008-07-01 13:14:00
  • Python socket编程实例详解

    2022-02-21 09:26:03
  • 初探TensorFLow从文件读取图片的四种方式

    2021-08-06 06:04:34
  • 在ASP中使用SQL语句之4:联合语句

    2007-08-11 12:34:00
  • asp之家 网络编程 m.aspxhome.com