Python转换服务的使用过程是什么
Admin 2022-09-21 群英技术资讯 312 次浏览
因为工作需要,最近开始学习Python;而项目上用到了永中文档转换服务,就想着要不要拿这个练练手。仰仗于Python的易用性,不一会就完成了。
查看了对应的接口文档后,先来上传一个文件试试:
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))
操作成功,文件已经上传,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结果。
json结果中包含了一些基本信息,如转换时间、文件信息、转换类型、及错误代码等等;而viewUrl就是文档在线预览的地址,复制到浏览器打开看下
刚才是先上传文件,再进行转换的,有没有更简单的办法合二为一呢?永中文档转换服务就提供了这样的复合型接口:
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预览;同时在参数中,额外加了一些水印相关参数,看看水印的效果如何:
考虑到现在很多文件都是在线的,而不手动上传,永中文档转换服务还提供了针对在线文档的转换接口:
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,有不足之处,还请各位大佬多多指教,哈。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
最近使用Python的过程中遇到了一些坑,例如用datetime datetime now()这个可变对象作为函数的默认参数,模块循环依赖等等。在此记录一下,
在处理数据的时候,很多时候会遇到批量替换的情况,如果一个一个去修改效率过低,也容易出错,replace()是很好的方法,下面这篇文章主要给大家介绍了关于Python pandas.replace用法的相关资料,需要的朋友可以参考下
本文主要介绍了Python曲线平滑的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
python的thread模块是比较底层的模块,python的threading模块是对thread做了一些包装的,可以更加方便的被使用。本文将为大家详细介绍一下python中的线程threading.Thread()的使用,需要的可以参考一下
本文主要介绍了python中ndarray数组的索引和切片的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008