C#使用ironpython调用python出现lxml

.Net技术 码拜 4年前 (2016-09-26) 1008次浏览
环境:python 7.1
ironpython 2.7.5
vs 2013
net 4.0
tushare 安装路径:D:\Anaconda   (参见 http://tushare.waditu.com/index.html)
已确认安装好:lxml ,pandas,tushare
脚本内容:
import tushare as ts
ts.get_hist_data(“600848”) #一次性获取全部日k线数据
现象:将此脚本直接运行,能正确获取数据。
用C#调用此脚本,提示错误。
错误信息:cannot import etree from lxml
C#代码如下:

ScriptEngine engine = Python.CreateEngine();
            engine.SetSearchPaths(new[] {@"D:\Anaconda",
                @"D:\Anaconda\Lib", 
@"D:\Anaconda\Lib\site-packages", 
@"E:\App\TaskMgrTest0804\TaskMgr\bin\Release" ,
@"D:\Anaconda\DLLs",
@"D:\Anaconda\Scripts"});
            ScriptScope scope = engine.CreateScope(); 
            ScriptSource script = engine.CreateScriptSourceFromString(this.richTextBox1.Text);//=>此处为脚本内容
            try
            {
                var result = script.Execute<object>(scope);
                MessageBox.Show(result.ToString());
            }
            catch (Exception ex)
            {
                MessageBox.Show("error:"+ex.Message);
            }

请高手指点下,或给个示例代码。

解决方案

40

首先确认搜索路径
例如 这个时候 你可以 代开Python的环境
然后输入 import xml 回车 假如没有报错 再次输入xml 看他爆出来的路径什么没准 不一定在python的目录下
你也可以试试 用 ipy.exe 看看能否导入 xml

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C#使用ironpython调用python出现lxml
喜欢 (0)
[1034331897@qq.com]
分享 (0)