JMP 18 python pptx 導入似乎不起作用大家好,
我的公司剛剛獲得 JMP 18 許可證,由於依賴性,PowerPoint 自動化不再運作。從JMP文件中我了解到Python現在是一個整合版本,在這種情況下必須透過jmputils安裝依賴項。以下是我目前用來導入 powerpoint 所使用的程式碼。即使透過 list 命令查看更新的依賴項,我仍然遇到相同的錯誤。
scr = Python Execute(
{},
{},
"\[
import jmp
import jmputils
jmputils.jpip('list')
jmputils.jpip('install --upgrade', 'pip setuptools python-pptx')<BR />
from pptx import Presentation #Problem Line
from pptx.util import Inches
from pptx.dml.color import RGBColor
from datetime import date
]\"
);這是我收到的日誌錯誤:

因此,我無法建立和儲存簡報。任何幫助將不勝感激。謝謝!
自動化和腳本編寫資料存取分享和交流成果視窗回覆:JMP 18 python pptx import 似乎不起作用在 JMP18 中安裝 Python 套件的方法有很多種( 使用 JSL 安裝 Python 套件 (jmp.com) )。軟體包安裝過程中是否發生錯誤?可以使用jpip安裝其他套件嗎?對我來說,運行你的程式碼似乎工作正常。這些軟體包應安裝到您的 JMP Python 使用者目錄中,您可以透過在 JMP 中執行以下 python 命令來發現
import jmp
print(jmp.PY_USER_APPDIR)
標記@Paul_Nelson,因為他很可能有更多可能出錯的想法。
回覆:JMP 18 python pptx import 似乎不起作用import jmp
from jmputils import jpip
jpip('list')
jpip('install --upgrade', 'pip setuptools python-pptx')
我運行上面的結果是:
Requirement already satisfied: pip in c:\users\_myUSERID_\appdata\roaming\jmp\jmp\python\python311\site-packages (24.0)
Collecting pip
Downloading pip-24.1.2-py3-none-any.whl.metadata (3.6 kB)
Requirement already satisfied: setuptools in c:\users\_myUSERID_\appdata\roaming\jmp\jmp\python\python311\site-packages (70.0.0)
Collecting setuptools
Downloading setuptools-70.3.0-py3-none-any.whl.metadata (5.8 kB)
Collecting python-pptx
Downloading python_pptx-0.6.23-py3-none-any.whl.metadata (18 kB)
Collecting lxml>=3.1.0 (from python-pptx)
Downloading lxml-5.2.2-cp311-cp311-win_amd64.whl.metadata (3.5 kB)
Collecting Pillow>=3.3.2 (from python-pptx)
Downloading pillow-10.4.0-cp311-cp311-win_amd64.whl.metadata (9.3 kB)
Collecting XlsxWriter>=0.5.7 (from python-pptx)
Downloading XlsxWriter-3.2.0-py3-none-any.whl.metadata (2.6 kB)
Downloading pip-24.1.2-py3-none-any.whl (1.8 MB)
---------------------------------------- 1.8/1.8 MB 8.3 MB/s eta 0:00:00
Downloading setuptools-70.3.0-py3-none-any.whl (931 kB)
---------------------------------------- 931.1/931.1 kB 4.9 MB/s eta 0:00:00
Downloading python_pptx-0.6.23-py3-none-any.whl (471 kB)
---------------------------------------- 471.6/471.6 kB 5.0 MB/s eta 0:00:00
Downloading lxml-5.2.2-cp311-cp311-win_amd64.whl (3.8 MB)
---------------------------------------- 3.8/3.8 MB 8.1 MB/s eta 0:00:00
Downloading pillow-10.4.0-cp311-cp311-win_amd64.whl (2.6 MB)
---------------------------------------- 2.6/2.6 MB 9.1 MB/s eta 0:00:00
Downloading XlsxWriter-3.2.0-py3-none-any.whl (159 kB)
---------------------------------------- 159.9/159.9 kB 3.2 MB/s eta 0:00:00
Installing collected packages: XlsxWriter, setuptools, pip, Pillow, lxml, python-pptx
Attempting uninstall: setuptools
Found existing installation: setuptools 70.0.0
Uninstalling setuptools-70.0.0:
Successfully uninstalled setuptools-70.0.0
Attempting uninstall: pip
Found existing installation: pip 24.0
Uninstalling pip-24.0:
Successfully uninstalled pip-24.0
Successfully installed Pillow-10.4.0 XlsxWriter-3.2.0 lxml-5.2.2 pip-24.1.2 python-pptx-0.6.23 setuptools-70.3.0
此時
from pptx import Presentation
日誌中給出
//:*/
from pptx import Presentation
/*:
我會查看日誌並調查運行時在日誌中看到的內容:
jmputils.jpip('install --upgrade', 'python-pptx')
我覺得您在安裝軟體包時一定遇到了一些問題,應該在日誌中報告。 Ir 可能是權限;存取互聯網,可能是磁碟權限,可能是磁碟空間不足,...如果不知道 jpip 報告記錄的內容,就很難追蹤。我在 18.1.0 上嘗試了上述操作,沒有任何問題。您是否嘗試過關閉 JMP 並重新啟動?我在安裝或運行您的腳本時沒有遇到任何問題。由於我們在這裡運行的只是 Python 程式碼,因此我直接從 Python 腳本視窗運行它,而不是從 JSL 中運行Python Submit()或Python Execute() 。 JSL 的Pyrthon 安裝包(「python-pptx」)也應該可以工作。在底層它呼叫 jmputils.jpip()。您也可以下拉到終端層級來安裝軟體包。使用Python創建JPIP CMD();建立根據您的 JMP 環境自訂的自訂命令列 jpip.bat 或 jpip shell 腳本 (macOS)。執行該指令會啟動一個對話方塊選擇器來選擇儲存 jpip 腳本的目標目錄。從 cmd 視窗/終端機運行
c:\path_you_chose\jpip.bat install python-pptx
回覆:JMP 18 python pptx import 似乎不起作用嗨保羅,
我重新啟動了 JMP,我提供的程式碼運行得非常有趣。我很欣賞詳細的描述和額外的步驟,如果我將來需要的話,我可以用它來排除故障。謝謝你!
回覆:JMP 18 python pptx import 似乎不起作用嗨,賈莫,
感謝您最初的幫助並與保羅聯繫,我很感謝您的幫助!
回覆:JMP 18 python pptx import 似乎不起作用應該在前面提到重新啟動 JMP。這是自 JMP 18.0 以來的早期修復之一。首次啟動時,直到需要時才會建立 site-packages 目錄。但是,如果在 Python 初始化之後建立 site-packages 目錄,Python 無法識別新增的任何套件。建立後,您可以新增套件,JMP Python 整合應該會立即看到它們。這個問題已在 JMP 19 開發分支中修復,因為 JMP 本身會在 Python 初始化之前建立 site-packages 目錄。這是一個足夠大的程式碼更改,因此不在 18 分支中。