我想将 python 脚本连接到 SAP。因此我使用由 SAP https://github.com/SAP/PyRFC/开发的 pyrfc 。
这适用于我的本地计算机,因为我遵循了安装说明:(http://sap.github.io/PyRFC/install.html#sap-nw-rfc-sdk-installation):
视窗
创建 SAP NW RFC SDK 主目录,例如 c:\nwrfcsdk
设置 SAPNWRFC_HOME 环境变量:SAPNWRFC_HOME=c:\nwrfcsdk
将 SAP NW RFC SDK 存档解压缩到其中,例如 c:\nwrfcsdk\lib 应存在。
将 lib 目录包含在 Windows 上的库搜索路径中,即扩展 >PATH 环境变量。
将 c:\nwrfcsdk\lib 添加到 PATH。
现在我想看看,这是否也可以在 pythonanywhere.com 上运行,以便以后开发一个 Django 应用程序。
因此,我将 SAP NW RFC SDK 上传到 pythonanywhere 并将 SAPNWRFC_Home env 变量设置为相应的 python Anywhere 文件夹:
echo SAPNWRFC_HOME=/home/Buddhagoes/nwrfcsdk/
这没有用。
我还尝试在 python 脚本本身中动态设置路径。没有成功 :-(
import sys
print(sys.path)
['', '/home/Buddhagoes/.local/lib/python2.7/site-packages',
'/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old',
usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages',
'/usr/local/lib/python2.7/dist-packages/Orange/orng',
/usr/lib/python2.7/dist-packages','/usr/lib/python2.7/dist-packages/wx-
3.0-gtk2']
sys.path += ["/home/Buddhagoes/nwrfcsdk/lib"]
sys.path
['', '/home/Buddhagoes/.local/lib/python2.7/site-packages',
'/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-
packages', '/usr/local/lib/python2.7/dist-packages/Orange/orng',
'/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/wx-
3.0-gtk2', '/home/Buddhagoes/nwrfcsdk/lib']
from pyrfc import Connection
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/Buddhagoes/.local/lib/python2.7/site-
packages/pyrfc/__init__.py", line 22, in <module>
from pyrfc._pyrfc import get_nwrfclib_version, Connection,
TypeDescription, FunctionDescription, Server
ImportError: libsapnwrfc.so: cannot open shared object file: No such file
or directory
如果托管的 python 脚本可以与我们的 SAP 系统通信,这将意味着我相对短暂的编程生涯将取得巨大进步,但我被困在这一点上 :-(
任何帮助将不胜感激。
谢谢