python服務之間互傳檔案
需求
flask以及djaogo都屬於python Web框架。
由於沒有找到flask框架http協議直接傳檔案的方法,django有一個方便的上傳檔案的方法,利用django框架實現Word轉換為PDF的服務。
flask服務將Word docx檔案傳送給django服務,django將其轉換為PDF之後再將PDF檔案傳送給flask,flask將PDF儲存下來
flask:
import requests from requests_toolbelt import MultipartEncoder def word2pdf(wordpath): s = requests url='django服務地址' path_pdf = wordpath print("圖片路徑:"+path_pdf) m = MultipartEncoder( fields={'path': path_pdf, 'file': ('filename', open(wordpath, 'rb'), 'text/plain') } ) ##將檔案內容傳輸到django服務 r = s.post(url, data=m, headers={'Content-Type': m.content_type}) pdfpath = wordpath.rsplit('.', 1)[0] + '.pdf' ##儲存返回的檔案內容 with open(pdfpath, 'wb') as pdf: pdf.write(r.content)
django:
from django.http import HttpResponse import os base_dir = 'F:/Project/' def word2pdf(request): if request.POST: global base_dir wordpath = request.POST.get('path') wordpath =base_dir + wordpath print(wordpath) path = os.path.dirname(wordpath) if not os.path.isdir(path): os.makedirs(path) handle_uploaded_file(request.FILES['file'],wordpath) ##將Word轉換為PDF BASE_DIR = os.path.dirname(__file__) ##project path print('haha base dir '+BASE_DIR) cmd = BASE_DIR + 'Docx2PDF.exe ' + wordpath os.system(cmd) ##將PDF檔案傳輸給flask pdfpath = wordpath.rsplit('.', 1)[0] + '.pdf' print('pdf路徑:'+pdfpath) f = open(pdfpath, 'rb') return HttpResponse(f.read(),content_type='text/plain') #返回檔案時,HttpResponse適合小檔案,當檔案過大時,可以採用以下方法 #response = StreamingHttpResponse(file_iterator(pdfpath)) #return response ##接收Word檔案 def handle_uploaded_file(word,path): destination = open(path, 'wb+') for chunk in word.chunks(): destination.write(chunk) destination.close()
相關推薦
python服務之間互傳檔案
需求 flask以及djaogo都屬於python Web框架。 由於沒有找到flask框架http協議直接傳檔案的方法,django有一個方便的上傳檔案的方法,利用django框架實現Word轉換為PDF的服務。 flask服務將Word docx檔案傳送給djang
Ubuntu虛擬機器與Windows主機之間互傳檔案
首先ubuntu要安裝配置SSH Ubuntu 下安裝 OpenSSH Server 是無比輕鬆的一件事情,需要的命令只有一條: sudo apt-get install openssh-server
vm兩個linux虛擬機器之間互傳檔案
例如程式碼在ip為192.168.1.1中的home/code路徑下,複製到192.168.1.2中,在192.168.1.2的終端中執行一下命令 scp -r [email protect
兩個虛擬機器之間互傳檔案
[[email protected] tomcat]# scp -r [email protected]:/usr/java/tomcat/apache-tomcat-8.0.52.tar.gz ./例如程式碼在ip為192.168.3.29中的/usr/
樹莓派之間互傳檔案
因為使用了樹莓派來做一個專案,使用的是樹莓派3 b+,在樹莓派上用Qt編譯好一個可執行程式之後,要拷貝到另外的樹莓派上去執行,網上查了下,使用sftp可行,現在記錄下來備忘。http://shumeipai.nxez.com/2013/09/07/use-the-remote
linux之間互傳檔案(ubuntu為例)
1.sudo apt-get update 下載前更新一下源,防止有些包找不到 2.sudo apt-get install openssh-server 下載ssh的服務端,其實執行這個命令之後,openssh-client也會預設安裝,反正我的是這樣。如果沒有預設安裝c
pscp實現windows和linux之間互傳檔案
PSCP (PuTTY Secure Copy client)是PuTTY 提供的檔案傳輸工具 ,通過 SSH 連線,在兩臺機器之間安全的傳輸檔案,可以用於任何 SSH(包括 SSH v1、SSH v2) 伺服器。 只需將putty的pscp.exe放到C:\Windows
Xshell用於windows主機和linux虛擬機器之間互傳檔案
此方法也是可以連線阿里雲伺服器的,通過xshell使用阿里雲伺服器並進行檔案的上傳下載真的好方便。 注:本文轉自 https://www.linuxidc.com/Linux/2015-05/117975.htm 這個東西比“共享資料夾”好用多了!(當然需要先配置xshe
如何輕鬆在win和linux之間互傳檔案
相信剛學Linux的同學肯定有這樣的困惑 那麼我剛開始的時候用哪種方式嘞,我列一下我使用過的方式。 1.在linux伺服器上開啟ftp。 優點:使用方便。 缺點:還得配置ftp,好煩啊。 2.藉助一箇中間網站,先上傳到網站上,然後在linux上下載下來。 優點
windows 與CentOS之間互傳檔案
1. 安裝lrzsz(zmodem) # yum install lrzsz 2
window 與CentOS之間互傳文件操作步驟
文件 entos nsf centos file 切換 文件的 賬戶 自動 工具:SecureCRT,Xshell。步驟一:安裝lrzsz軟件,root權限下。安裝lrzsz(zmodem)對於CentOS系統:1[root@www ~]# yum install lrzs
rsync的配置檔案(可以兩端互傳檔案了,不限ip)
use chroot = no
linux下兩臺主機互傳檔案
假設主機B:[email protected] 1.從本機傳至另一臺主機B $ scp [引數] [檔案地址+名字] [email protected]:[要儲存的位置] 此時輸入密碼即可 2.從主機B傳到本機 $ scp [引數] [email
win2008 r2 搭建FTP服務實現上傳檔案
如何使用FTP傳輸檔案到伺服器 Win10開啟FTP與配置(完整無錯版) 一、控制面板》程式》開啟或關閉windows功能 二、安裝IIS服務 三、開始》管理工具》計算機管理
使用TCP協議,分別編寫服務端和客戶端,要求客戶端向服務端上傳檔案。(使用字元流完成)
package Test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.IOException; import java.io
Ubuntu 之linux與windows互傳檔案
Windows系統下與linux傳輸檔案 windows環境下,windows傳出資料到linux下 確保ubuntu安裝了ssh服務端。 如果沒有安裝,使用以下命令安裝: sudo aptget install ssh service sshd restart 2
window Linux互傳檔案
pscp用法 scp命令例如:pscp c:\testtest.tar [email protected]:/home/guowei/ 回車後輸入密碼就可以了。 上傳 1 PSCP.EXE -p -r -v -pw x
Python Flask,上傳檔案,request.files
demo.py(上傳檔案): # coding:utf-8 from flask import Flask, request # 匯入request物件 app = Flask(__name__) @app.route("/upload", methods=["PO
Python下ftp上傳檔案linux伺服器
模組介紹: 1 from ftplib import FTP 2 ftp = FTP() #設定變數 3 ftp.set_debuglevel(2) #開啟除錯級別2 顯示詳細資訊 4 ftp.connect("IP", "port") #連線ftp, IP和埠
解決python中requests上傳檔案遇到中文名檔案時,上傳失敗的問題
本人使用的是Python3.4.3為例: 找到C:\Python34\Lib\site-packages\urllib3\fields.py檔案將: result = '%s="%s"' % (name, value) try: