前言
操作系统:Window 10 64位
RPA:IS-RPA 2020.2.0
查看IS-RPA Python版本
由下图可知:
IS-RPA安装在E盘,Python解释器所在的目录在IS-RPA2020 / Python下
Python的版本是Python 3..6.4 32位
下载cx_Oracle第三方库
点击这里下载:下载链接
- cpxx,表示适用于Python的版本为xx
- 带有win32后缀是32位
- 带有amd64后缀是64位
举个栗子:cx_Oracle‑7.3.0‑cp36‑cp36m‑win32.whl 表示适用于Python3.6版本,32位
安装cx_Oracle第三方库
# 安装 1.打开 PowerShell2. 进入 E:Program FilesIS-RPA2020PythonScripts> (这里 IS-RPA 安装在 E 盘)3. 输入以下命令(这里 Oracle 第三方库的位置在 l D:download) PS E:Program FilesIS-RPA2020PythonScripts> ..python.exe .pip.exe install D:downloadcx_Oracle-7.3.0-cp36-cp36m-win32.whl
注意:选择对应的Python版本下载cx_oracle第三库
测试连接Python第三方库
conn = cx_Oracle.connect('szxy/123@localhost:1527/orcl') cursor = conn.cursor() result = cursor.execute('''select * from DEPT''') data = cursor.fetchall() print(data)
运行发生异常
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 32-bit Oracle Client librar: "E:Oracleproduct11.2.0dbhome_1binoci.dll is not the correct architecture". See https://oracle.github.io/odpi/doc/installation.html#windows for help
发生异常原因是:小编安装是Oracle版本是Oracle 11g 64位的,而Python的版本是32位的。
解决方案
适用于Microsoft Windows 32位的Instant Client下载,下载速度很慢,耐心等待。
将Instantclient-basic-nt-11.2.0.4.0.zip解压,然后将Instantclient-basic-nt-11.2.0.4.0目录下的oci.dll,oraocci11.dll,oraociei11.dll复制到E: Program Files IS-RPA2020 Python Lib site-packages目录下
重新运行
结果集中文乱码
# 原来的 conn = cx_Oracle.connect(g_conn_str,) # 修改后的 conn = cx_Oracle.connect(g_conn_str, encoding = "UTF-8", nencoding = "UTF-8")
再次运行