biopython を使用して、特定の機関によって配列決定された生物のリストのすべてのタンパク質をダウンロードしようとしています。各生物に関連付けられた生物名と BioProject があります。具体的には、いくつかの最近のゲノム配列で見つかったタンパク質を分析しようとしています。efetchで可能な限り簡単な方法で、タンパク質ファイルをまとめてダウンロードしたいと思います。関連する生物のすべてのタンパク質 FASTA シーケンスをダウンロードする私の最近の試みは次のとおりです。
net_handle = Entrez.efetch(db="protein",
id=mydictionary["BioPROJECT"][i],
rettype="fasta")
各生物に関連するタンパク質はおよそ 3000 ~ 4500 あります。そのため、esearch を使用して各タンパク質を一度に 1 つずつ efetch しようとするのは現実的ではありません。さらに、すべてのタンパク質を含む各生物に対して 1 つの FASTA ファイルが必要です。
残念ながら、このコード行を実行すると、次のエラーが表示されます:
urllib2.HTTPError: HTTP Error 400: Bad Request
.
私が興味を持っているすべての生物について表示されます。Nucleotide データバンクでそれらのゲノム配列を見つけて、「タンパク質コード配列」をダウンロードすることはできません。
NCBI サーバーを過負荷にしない方法で、必要なこれらのタンパク質配列を取得するにはどうすればよいですか? 私は、NCBI の Web ブラウザーでできることを再現できることを望んでいました: タンパク質データベースを選択し、Bioproject 番号を検索し、見つかったすべてのタンパク質配列を単一の fasta ファイルに保存します ([送信先] ドロップダウンの下)。メニュー)