问题标签 [openbabel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2753 浏览

python - 如何在 Windows 10 中为 Python 3.6 安装 openbabel?

我正在使用 Python 制作一个脚本来处理我的博士学位中的一些化学结构。我想为 python 安装 openbabel 库。我尽力了,但我无法安装它。它总是给出错误: Error: SWIG failed. Is Open Babel installed? 这是我 PC 上的 Python 路径:C:\Users\malih\AppData\Local\Programs\Python\Python36-32. Openbabel 安装在以下路径C:\Program Files (x86)\OpenBabel-2.3.1

当我运行时python -m pip install openbabel,它给出了以下错误:

我尝试按照此页面上的说明进行操作,但它们纯粹是针对 linux 的,我无法针对 Windows 进行跟进: 如何在 Travis CI 中使用 python-openbabel?

我还尝试从以下指南安装 pkg-config,但即使在此之后,它也会给出相同的错误: 如何在 Windows 中安装 pkg config?

请帮助我,因为我的工作是基于此的,我被困在这一点上。在此先感谢您的时间。

0 投票
1 回答
1724 浏览

python - 如何在 macOS Sierra 10.12.3 上为 Python 3.6 安装 openbabel

我正在使用 Python 制作一个脚本来处理我的博士学位中的一些化学结构。我想为 python 安装 openbabel 库。我尽力了,但我无法在 Windows 上安装它。我之前在如何在 Windows 10 中为 Python 3.6 安装 openbabel发布了一个关于在 Windows 上安装它的问题?但找不到解决方案。该解决方案安装了库,但它不起作用并且无法连接到 SWIG。不,我正在尝试将它安装在我的办公室计算机上,这是过去 5 个小时的 mac,但我不知道发生了什么。我尝试从 Opnbabel 的源代码安装它并将其与 python3 链接,但它出现了问题。如果我使用以下命令:

cmake ../ -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON

它成功地将它链接到我不想要的 Python 2.7。当我尝试以下选项时,它会给出如下所示的错误:

cmake ../ -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_BINDINGS=ON -DRUN_SWIG=ON

或者

cmake ../ -DRUN_SWIG=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/3.5/lib/libpython3.5m.dylib -DPYTHON_BINDINGS=ON

在大量成功输出后,最后会出现以下错误:

我不确定为什么它将 Python 检测为 v1.4-- Found PythonInterp: /usr/bin/python3.6 (found version "1.4")而不是找到 v.3.5。我也用 python 3.6 尝试了所有过程,但发生了同样的错误。我还使用从 github 获得的 openbabel,据说在以下帖子中可以使用这些命令:http ://forums.openbabel.org/OpenBabel-for-Python-3-td4659432.html 但它不起作用也是。请帮助我,因为我需要此模块进行研究。谢谢

0 投票
1 回答
309 浏览

png - Open Babel 无法从 mol2 转换为 png,因为 Cairo 库未加载

我首先通过 brew 安装了 Open Babel。当我尝试运行命令:“obabel -:”CC(=O)Cl”-opng -O mymol.png”时,我收到了以下错误消息:“ Open Babel Error in PNG Format PNG2Format not found. 可能是 Cairo 库未加载。” 然后我继续使用 brew 卸载 Open Babel。然后,我用 brew 安装了 Cairo,然后再次用 brew 安装了 Open Babel。尽管如此,我还是尝试创建一个 PNG 输出,它给了我同样的错误信息。我就是不知道怎么回事??

0 投票
1 回答
98 浏览

python - 对列表的每个元素运行外部程序

我正在尝试为分子列表(SMILES 格式)中的每个元素(分子)调用外部程序(Openbabel)。但是,我不断收到相同的错误:

我的代码有什么问题?

0 投票
3 回答
661 浏览

python-3.x - 如何在 Pybel 中禁用记录的警告?

我正在使用 Pybel - OpenBabel API 的 Python 包装器,我正在尝试禁用以下警告:

当从ChEMBL获取指纹分子SMILES时,我的警告一直被提出

0 投票
0 回答
61 浏览

python-3.x - 将日志重定向到 Pybel 中的文件?

这篇文章类似,但我不想更改日志记录级别,而是将所有日志记录信息重定向到一个文件。我相信相关的 API 调用是:

或者:

但是该SetOutputStream()方法只接受 type 的对象std::ostream *,而不接受 Python 文件流,例如open('/path/to/log.txt', 'w')sys.stdout.

TL;DR:有没有一种合理的方法可以将日志信息定向到 PyBel 中的文件?

0 投票
0 回答
56 浏览

python - 我可以在pybel格式转换期间捕获警告消息吗?

我有一个 SMILES 格式的分子列表,我将其转换为 InChIKey 格式。但是,其中一些正在生成警告。我希望能够生成一个文件,显示在转换每个分子的过程中产生的警告,以便团队成员可以查看它们。是否可以以编程方式捕获这些消息,而不仅仅是记录它们?

一个片段说明了我希望能够做什么:

0 投票
0 回答
201 浏览

heroku - 安装python openbabel包heroku

试图在heroku上安装openbabel。我将这一行放在我的requirements.txt文件中:openbabel==2.4.1. 我通常使用 anaconda 将 openbabel 安装到我的本地计算机上。看起来它有一个名为 SWIG 的依赖项,但在线搜索表明可以使用自制软件安装 SWIG,那么我怎样才能在 heroku 上实现呢?我不知道该怎么办。任何帮助表示赞赏。目前,它给了我这个错误信息:

0 投票
1 回答
747 浏览

python - “导入 pybel”上的“IndexError:列表索引超出范围”

我正在开发一个网络应用程序 django,当我安装 openbabel 并尝试导入 pybel 时出现错误

我使用的venv是在执行所有这些命令时激活的

我像这样安装openbabel:

sudo apt-get install python-openbabel

我也试过:

sudo apt-get install openbabel libopenbabel-dev swig

然后我做了:

pip install openbabel

之后,我尝试导入 pybel(在导入 openbabel 之后)

这是实际结果:

请问有什么帮助吗?

0 投票
1 回答
119 浏览

c# - 打开运行 .Net C# 进程的 Babel,在部署的网站上不起作用

由于某些情况,我被要求开发一个页面,该页面使用 .Net C# 中的 Process 来通过命令提示符调用该函数。该代码在 Visual Studio 上运行良好,但在 IIS 服务器上部署时。流程似乎不起作用,我已经调试并发现流程本身有效。但是打开的 Babel 命令不起作用,我做了仔细检查,我提供的身份应该没问题,我什至提供了管理员权限,但仍然不起作用。它甚至没有弹出或错误,它只是简单地忽略它并执行命令。我将命令放入 .bat 文件中,并带有一些额外的命令来测试 .bat 是否有效。一切都很好,直到带有打开 babel 的命令,然后进程似乎对命令没有反应。

obabel %1 -O %2 --gen2d

这是我提供给它的命令,%1 是输入文件,而 %2 是输出文件名。一个非常简单的转换。注意:一切都很好,只是在整个文件中忽略了 open babel 命令。并且我尝试为其提供管理员权限,但仍然无法正常工作。如果直接与服务器上的命令提示符一起使用,或者通过Visual Studio可以使用 open babel 。但如果我通过 IIS 服务器部署它,它就不起作用。