NCBI PowerScripting in EUtils: http://eutils.ncbi.nlm.nih.gov/entrez/query/static/eutils_help.html
Entrezに対し、検索keywordを投げて、結果をXML(uidのリスト)で返す一連のutility。検索結果は、WebEnvというタグにunique idを書いてくれて、このunique idで、検索のパイプラインができるように、6時間程度サーバに保存しておいてくれるらしい。
たとえば、
http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&term=cdk
とすると、PubMedでcdkを検索して、そのuidを返す。この結果では、3459個の結果がヒットして、内20個(基準は?)の結果を返してきている。
3459
20
0
15880679
15880444
15879558
15876898
15876871
15870436
15870265
15868934
15867383
15867250
15866881
15863515
15862825
15857508
15857291
15856029
15855174
15853645
15845746
15843986
cdk[All Fields]
All Fields
3459
Y
GROUP
また、elink.fcgiを利用すると、タンパク->遺伝子の変換が可能だ。
http://eutils.ncbi.nlm.nih.gov/entrez/eutils/elink.fcgi?dbfrom=protein&uid=31542372&db=nucleotide
とすると、protein database(dbfromで指定)のGI#31542372(uidで指定)に関連した、nucleotideを取って来い、となって
protein
31542372
nucleotide
protein_nucleotide
51712828
31542371
な結果が返ってくる。複数のdbを指定するには、db=nucleotideの後に、カンマでdb名を複数つなげればよい。db=nucleotide,structure などなど。
あ、やっぱり、WebEnvが現れてないなぁ。
あと、NCBIのエントリに限ってもしょうがないよなぁ、two-hybridとか、そういうのも引いてきたい。もう一段genericなもの、求む。てか、作れ?