一、下载与安装
下载python包
pip install pubchempy
查看说明
help(pubchempy)
(二、使用说明
一、模块概述
pubchempy
是用于 PubChem PUG REST 服务的 Python 接口,其源代码可在https://github.com/mcs07/PubChemPy获取。
二、主要类
-
Assay
类- 代表 PubChem 中的一个实验记录。
- 方法包括初始化、比较、转换为字典表示等。
- 类方法可从 AID 检索实验记录。
- 具有多种属性,如 aid、aid_version、comments、description、name、project_category、results、revision、target 等。
-
Atom
类- 表示化合物中的一个原子。
- 可设置和获取原子的属性,如原子 ID、原子序数、坐标和电荷等。
- 具有将原子转换为字典表示等方法。
- 具有 coordinate_type 和 element 等只读属性。
-
BadRequestError
类- 继承自
PubChemHTTPError
,表示请求格式不正确。
- 继承自
-
Bond
类- 代表化合物中两个原子之间的键。
- 可操作键的属性,如起始和结束原子 ID、键序和键样式等。
- 可转换为字典表示。
-
BondType
类- 定义了不同键类型的常量。
-
Compound
类- 对应 PubChem 化合物数据库中的单个记录。
- 可从 CID 检索化合物记录。
- 具有多种属性,如 aids、atom_stereo_count、atoms、bond_stereo_count、bonds、cactvs_fingerprint、canonical_smiles、charge、cid 等。
- 可转换为字典或
pandas.Series
表示。
-
CompoundIdType
类- 定义了化合物 ID 类型的常量。
-
CoordinateType
类- 定义了坐标类型的常量。
-
MethodNotAllowedError
类- 继承自
PubChemHTTPError
,表示请求不被允许。
- 继承自
-
NotFoundError
类- 继承自
PubChemHTTPError
,表示输入记录未找到。
- 继承自
-
ProjectCategory
类- 定义了项目类别的常量。
-
PubChemHTTPError
类- 通用错误类,用于处理所有 HTTP 错误代码。
-
PubChemPyDeprecationWarning
类- 用于警告已弃用的功能。
-
PubChemPyError
类- 所有
pubchempy
异常的基类。
- 所有
-
ResponseParseError
类- 表示无法解析 PubChem 响应。
-
ServerError
类- 继承自
PubChemHTTPError
,表示服务器端出现问题。
- 继承自
-
Substance
类- 对应 PubChem 物质数据库中的单个记录。
- 可从 SID 检索物质记录。
- 具有多种属性,如 aids、cids、deposited_compound、sid、source_id、source_name、standardized_cid、standardized_compound、synonyms 等。
- 可转换为字典或
pandas.Series
表示。
-
TimeoutError
类- 继承自
PubChemHTTPError
,表示请求超时。
- 继承自
-
UnimplementedError
类- 继承自
PubChemHTTPError
,表示请求的操作尚未实现。
- 继承自
三、函数
compounds_to_frame(compounds, properties=None)
:从化合物对象列表构建pandas.DataFrame
。deprecated(message=None)
:装饰器,用于标记已弃用的函数。download(outformat, path, identifier, namespace='cid', domain='compound', operation=None, searchtype=None, overwrite=False, **kwargs)
:下载数据,格式可以是 XML、ASNT/B、JSON、SDF、CSV、PNG、TXT。get(identifier, namespace='cid', domain='compound', operation=None, output='JSON', searchtype=None, **kwargs)
:自动处理异步请求的请求包装器。get_aids(identifier, namespace='cid', domain='compound', searchtype=None, **kwargs)
。get_all_sources(domain='substance')
:返回所有当前物质或实验的提交者列表。get_assays(identifier, namespace='aid', **kwargs)
:检索指定的实验记录。get_cids(identifier, namespace='name', domain='compound', searchtype=None, **kwargs)
。get_compounds(identifier, namespace='cid', searchtype=None, as_dataframe=False, **kwargs)
:检索指定的化合物记录,可转换为pandas.DataFrame
。get_json(identifier, namespace='cid', domain='compound', operation=None, searchtype=None, **kwargs)
:自动解析 JSON 响应并抑制NotFoundError
的请求包装器。get_properties(properties, identifier, namespace='cid', searchtype=None, as_dataframe=False, **kwargs)
:检索指定的属性,可转换为pandas.DataFrame
。get_sdf(identifier, namespace='cid', domain='compound', operation=None, searchtype=None, **kwargs)
:自动解析 SDF 响应并抑制NotFoundError
的请求包装器。get_sids(identifier, namespace='cid', domain='compound', searchtype=None, **kwargs)
。get_substances(identifier, namespace='sid', as_dataframe=False, **kwargs)
:检索指定的物质记录,可转换为pandas.DataFrame
。get_synonyms(identifier, namespace='cid', domain='compound', searchtype=None, **kwargs)
。memoized_property(fget)
:装饰器,用于创建记忆化属性。request(identifier, namespace='cid', domain='compound', operation=None, output='JSON', searchtype=None, **kwargs)
:构建 API 请求并返回响应。substances_to_frame(substances, properties=None)
:从物质对象列表构建pandas.DataFrame
。
四、数据
API_BASE = 'https://pubchem.ncbi.nlm.nih.gov/rest/pug'
。ELEMENTS = {1: 'H', 2: 'He', 3: 'Li', 4: 'Be', 5: 'B', 6: 'C', 7: 'N',...}
。PROPERTY_MAP = {'atom_stereo_count': 'AtomStereoCount', 'bond_stereo_c...}
。__email__ = 'm.swain@me.com'
。__license__ = 'MIT'
。division = _Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 1310...
。log = <Logger pubchempy (WARNING)>
。print_function = _Feature((2, 6, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0)...
。text_types = (<class 'str'>, <class 'bytes'>)
。unicode_literals = _Feature((2, 6, 0, 'alpha', 2), (3, 0, 0, 'alpha',...
。
五、版本和作者
VERSION = 1.0.4
。AUTHOR = Matt Swain
。