Bio.TogoWS 包
模块内容
提供访问日本 DBCLS 集成网络服务的 TogoWS 的代码。
该模块旨在使 TogoWS(来自日本 DBCLS)更容易使用。参见:http://togows.dbcls.jp/
TogoWS REST 服务为一系列数据库提供简单访问,充当代理以屏蔽您与所有不同的提供者 API 之间的交互。这使用简单的 URL(该模块将为您构建)来实现。有关更多详细信息,请参阅http://togows.dbcls.jp/site/en/rest.html
其功能与 Biopython 的 Bio.Entrez 模块有点类似,该模块提供对 NCBI 的 Entrez 实用程序(E-Utils)的访问,该实用程序也涵盖了广泛的数据库。
目前 TogoWS 没有提供任何使用指南(与 NCBI 的要求相当清楚不同)。为了避免过度使用该服务,Biopython 每次仅允许每秒三次调用。
TogoWS SOAP 服务为调用 DDBJ、KEGG 和 PDBj 提供的网络服务(本质上是调用远程函数)提供了更复杂的 API。例如,这允许您在 DDBJ 上运行远程 BLAST 搜索。该模块尚未涵盖此内容,但是 TogoWS 网站上有很多使用 SOAPpy python 库的 Python 示例。参见:http://togows.dbcls.jp/site/en/soap.html http://soapy.sourceforge.net/
- Bio.TogoWS.entry(db, id, format=None, field=None)
调用 TogoWS ‘entry’ 以获取记录。
- 参数
db - 数据库(字符串),见下表。
id - 标识符(字符串)或标识符列表(作为字符串列表或带逗号分隔符的单个字符串)。
format - 返回数据文件格式(字符串),选项取决于数据库,例如“xml”、“json”、“gff”、“fasta”、“ttl”(RDF Turtle)
field - 数据库记录内的特定字段(字符串),例如 pubmed 的“au”或“authors”。
在撰写本文时,它包括以下内容
KEGG: compound, drug, enzyme, genes, glycan, orthology, reaction, module, pathway DDBj: ddbj, dad, pdb NCBI: nuccore, nucest, nucgss, nucleotide, protein, gene, onim, homologue, snp, mesh, pubmed EBI: embl, uniprot, uniparc, uniref100, uniref90, uniref50
有关当前列表,请参阅http://togows.dbcls.jp/entry/
此函数本质上等效于 NCBI Entrez 服务 EFetch,在 Biopython 中可用,作为 Bio.Entrez.efetch(…),但它不提供字段提取。
- Bio.TogoWS.search_count(db, query)
调用 TogoWS 搜索计数以查看搜索有多少匹配项。
- 参数
db - 数据库(字符串),请参阅http://togows.dbcls.jp/search
query - 搜索词(字符串)
然后,您可以使用计数来使用偏移量和限制选项批量下载大量搜索结果,以 Bio.TogoWS.search()。但是,一般情况下,Bio.TogoWS.search_iter() 函数更易于使用。
- Bio.TogoWS.search_iter(db, query, limit=None, batch=100)
调用 TogoWS 搜索,迭代结果(生成器函数)。
- 参数
db - 数据库(字符串),请参阅http://togows.dbcls.jp/search
query - 搜索词(字符串)
limit - 搜索结果数的可选上限
batch - 每次与 TogoWS 通信时要提取的搜索结果数(目前限制为 100)。
您可以在 for 循环中使用此函数,例如
>>> from Bio import TogoWS >>> for id in TogoWS.search_iter("pubmed", "diabetes+human", limit=10): ... print("PubMed ID: %s" %id) # maybe fetch data with entry? PubMed ID: ...
在内部,它首先调用 Bio.TogoWS.search_count(),然后使用 Bio.TogoWS.search() 按批次获取结果。
- Bio.TogoWS.search(db, query, offset=None, limit=None, format=None)
调用 TogoWS 搜索。
这是 TogoWS 搜索函数的低级包装器,它可以以多种格式返回结果。通常,search_iter 函数更适合最终用户。
- 参数
db - 数据库(字符串),请参阅http://togows.dbcls.jp/search/
query - 搜索词(字符串)
offset, limit - 可选整数,指定从哪个结果开始(从 1 开始)以及要返回的结果数。
format - 返回数据文件格式(字符串),例如“json”、“ttl”(RDF)默认情况下返回纯文本,每行一个结果。
在撰写本文时,TogoWS 应用了 100 个搜索结果的默认计数限制,这是上限。要访问更多结果,请使用 offset 参数或 search_iter(…) 函数。
TogoWS 支持大量数据库,包括来自 NCBI 的许多数据库(例如“ncbi-pubmed”或“pubmed”、“ncbi-genbank”或“genbank”和“ncbi-taxonomy”)、EBI(例如“ebi-ebml”或“embl”、“ebi-uniprot”或“uniprot”、“ebi-go”)和 KEGG(例如“kegg-compound”或“compound”)。有关当前列表,请参阅http://togows.dbcls.jp/search/
NCBI 提供 Entrez 搜索服务 (ESearch),它类似于 Biopython 中可用的 Bio.Entrez.esearch() 函数。
另请参阅 Bio.TogoWS.search_count() 函数,该函数返回找到的匹配项数量,以及 Bio.TogoWS.search_iter() 函数,该函数允许您迭代搜索结果(为您处理批处理)。
- Bio.TogoWS.convert(data, in_format, out_format)
调用 TogoWS 进行文件格式转换。
- 参数
data - 包含输入记录的字符串或句柄
in_format - 描述输入文件格式的字符串(例如“genbank”)
out_format - 描述请求的输出格式的字符串(例如“fasta”)
有关支持的转换列表(例如“genbank”到“fasta”),请参阅http://togows.dbcls.jp/convert/
请注意,Biopython 内置支持序列和比对文件格式的转换(函数 Bio.SeqIO.convert 和 Bio.AlignIO.convert)