如何利用Python實現Office在線預覽


    目前,市場對於Office在線預覽功能的需求是很大的。對於我們用戶本身來說,下載Office文件后再實現預覽是極其不方便的,何況還有一些不能打開的專業文檔、壓縮文件等。此時,能提供在線預覽服務的軟件就顯得尤為重要。市面上常見的有永中雲預覽、微軟Office Online以及一些開源的產品。今天就從開發者的角度向大家介紹一下Python如何通過永中雲預覽實現文檔在線預覽服務。

一、申請應用

    首先,打開永中雲服務的官網https://open.yozocloud.cn/,進行注冊登錄
    其次,在管理中心申請永中雲預覽的應用,應用名稱根據實際情況自己設置即可,此時會生成appId和appkey。

二、 獲取簽名

    永中雲預覽官網上目前已經提供多種開發語言的sdk包,Python相關的鏈接直接貼上。

    SDK下載地址https://cms.yozocloud.cn/info/file/getResource/78

    DEMO下載地址https://cms.yozocloud.cn/info/file/getResource/77

    示例如下,簽名時傳參數appId和secret即可(Secret就是前文的appkey)

from signclient import generateSign

secret = '   '
params = {
    "appId": ["   "]
}
sign = generateSign(secret, params)
print(sign)

三、上傳文件

    永中雲預覽提供http上傳以及本地上傳,在這就針對本地上傳進行簡略介紹。

    文件上傳需要參數appId、sign、file.

    API地址:http://dmc.yozocloud.cn/api/file/upload  調用方法:post

    注意:文件的數據類型:multipartFile   參數類型:formData

#upload上傳文件
url = 'http://dmc.yozocloud.cn/api/file/upload?appId={}&sign={}'.format(' appId數據 ', sign)

header = {"Content-Type": "multipart/form-data"}   #文件數據類型
file = {"file": open("E:\\測試.pdf", "rb")}

res = requests.post(url=url, files=file).json()
print(res)

fileVersionId = res['data']['fileVersionId']

    上傳本地文件至永中服務器,上傳成功后會返回對應的fileId和fileVersionId,我們可以使用fileVersionId實現在線操作。

四、預覽文檔

   此時,利用生成的fileVersionId、appId、secret生成二次簽名sign。

#二次簽名
params = {"appId": ["   "],
          "fileVersionId": [fileVersionId]
          }
sign = generateSign(secret, params)
print(sign)

    拼接預覽地址示例如下:http://eic.yozocloud.cn/api/view/file?fileVersionId=xxxx&appId=xxxx&sign=xxxxx

    拼接完預覽地址后,可以在瀏覽器直接訪問,實現文檔在線預覽。

#拼接預覽地址
url = 'http://eic.yozocloud.cn/api/view/file?appId={}&sign={}&fileVersionId={}'.format(' ', sign,
                                                                            fileVersionId)
print(url)

    預覽效果如圖所示:

 

 

    除此之外,永中還提供了其他參數,比如水印watermark、防復制isCopy、預覽模式viewType、源文件下載isDownload等,可以實現不同的需求。

 

    總而言之,永中雲預覽的服務是一種比較方便的Office文檔在線預覽方式,不失為好的選擇!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM