[ PROMPT_NODE_26272 ]
bioservices
[ SKILL_DOCUMENTATION ]
# BioServices
## 概述
BioServices 是一个 Python 包,提供对约 40 种生物信息学 Web 服务和数据库的程序化访问。在 Python 工作流中检索生物数据、执行跨数据库查询、映射标识符、分析序列并集成多个生物资源。该包透明地处理 REST 和 SOAP/WSDL 协议。
## 何时使用此技能
在以下情况使用此技能:
- 从 UniProt、PDB、Pfam 检索蛋白质序列、注释或结构
- 通过 KEGG 或 Reactome 分析代谢通路和基因功能
- 在化合物数据库 (ChEBI, ChEMBL, PubChem) 中搜索化学信息
- 在不同生物数据库之间转换标识符 (KEGG↔UniProt, 化合物 ID)
- 运行序列相似性搜索 (BLAST, MUSCLE 比对)
- 查询基因本体术语 (QuickGO, GO 注释)
- 访问蛋白质-蛋白质相互作用数据 (PSICQUIC, IntactComplex)
- 挖掘基因组数据 (BioMart, ArrayExpress, ENA)
- 在单个工作流中集成来自多个生物信息学资源的数据
## 核心功能
### 1. 蛋白质分析
检索蛋白质信息、序列和功能注释:
python
from bioservices import UniProt
u = UniProt(verbose=False)
# 按名称搜索蛋白质
results = u.search("ZAP70_HUMAN", frmt="tab", columns="id,genes,organism")
# 检索 FASTA 序列
sequence = u.retrieve("P43403", "fasta")
# 在数据库间映射标识符
kegg_ids = u.mapping(fr="UniProtKB_AC-ID", to="KEGG", query="P43403")
**关键方法:**
- `search()`: 使用灵活的搜索词查询 UniProt
- `retrieve()`: 以各种格式 (FASTA, XML, tab) 获取蛋白质条目
- `mapping()`: 在数据库间转换标识符
参考:`references/services_reference.md` 获取完整的 UniProt API 详情。
### 2. 通路发现与分析
访问基因和生物体的 KEGG 通路信息:
python
from bioservices import KEGG
k = KEGG()
k.organism = "hsa" # 设置为人类
# 搜索生物体
k.lookfor_organism("droso") # 查找果蝇物种
# 按名称查找通路
k.lookfor_pathway("B cell") # 返回匹配的通路 ID
# 查找包含特定基因的通路
pathways = k.get_pathway_by_gene("7535", "hsa") # ZAP70 基因
# 检索并解析通路数据
data = k.get("hsa04660")
parsed = k.parse(data)
# 提取通路相互作用
interactions = k.parse_kgml_pathway("hsa04660")
relations = interactions['relations'] # "