首页 > 解决方案 > 在 pythonanywhere.com 上使用 PyRFC 连接到 SAP

问题描述

我想将 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 系统通信,这将意味着我相对短暂的编程生涯将取得巨大进步,但我被困在这一点上 :-(

任何帮助将不胜感激。

谢谢

标签: pythonsappythonanywherepyrfc

解决方案


推荐阅读