2015-08-16 62 views
-1

我有一個python程序。它將文本文件(A)中的一些文本作爲輸入,執行一些文本註釋並將註釋文本作爲輸出存儲在另一個文件(B)中。現在,我的計劃是讓它像一個網絡服務。如何將Python程序轉換爲Web服務?

我可以做到這一點使用PHP並從PHP調用python程序。具體來說,我的php代碼是這樣的 -

- 從HTML textarea中獲取文本。

--Saves文成文件A.

--Runs Python程序。

- 加載文件B的輸出並在HTML textarea中顯示帶註釋的文本。

現在,要做文本註釋,python程序需要從另一個大文件(C)加載模型。我會說,加載時間是10秒,註釋需要2秒。每次我在HTML textarea中都有一個新文本,我需要12秒來顯示輸出。我想盡量減少總體時間。我想,如果我可以從PHP與已經運行的Python程序進行通信,我實際上可以節省10秒。因爲,那麼Python只需要加載模型文件C一次,它可以將模型應用於PHP發送給他的任何文本,並且它也可以將輸出發送到PHP。

有沒有辦法實現這個目標?無論如何,django能幫忙嗎?

非常感謝您的閱讀。

+0

你真的需要混合PHP和Python此?爲什麼不使用一個或另一個。您正在處理的文件有多大?除非他們非常大,否則10秒看起來非常過分。 – e4c5

+0

我不僅可以使用PHP。因爲,我需要使用python包來處理輸入並將模型應用於它。我不能只使用python。因爲,我需要其他網絡功能。例如,用戶註冊和東西。 – Naffi

+0

那麼爲什麼不使用python的一切? – e4c5

回答

0

您可以在您的Python和php程序中使用原始套接字來使它們在本地通過TCP進行通信。 使你的Python程序成爲一個地址爲'localhost'和端口號的TCP服務器,例如5555,然後在你的php腳本中也使用套接字創建一個客戶端代碼,將待處理文本作爲TCP請求發送給你的Python腳本。

+0

感謝您的回答。我會盡力回覆。 – Naffi

相關問題