0

Python を介して pubmed にクエリを実行したい。これを行うための素敵な生物学関連のライブラリを見つけました: http://biopython.org/DIST/docs/tutorial/Tutorial.html

ここでサンプルコードを見つけました: http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc116

from Bio import Entrez
Entrez.email = "A.N.Other@example.com"     
handle = Entrez.egquery(term="orchid")
record = Entrez.read(handle)
for row in record["eGQueryResult"]:
  if row["DbName"]=="pubmed":
    print row["Count"]

メールを変更してこのコードを実行すると、次のエラーが表示されます。

Traceback (most recent call last):
  File "pubmed.py", line 15, in <module>
    handle = Entrez.egquery(term=my_query)
  File "/usr/lib/pymodules/python2.7/Bio/Entrez/__init__.py", line 299, in egquery
    return _open(cgi, variables)
  File "/usr/lib/pymodules/python2.7/Bio/Entrez/__init__.py", line 442, in _open
    raise exception
urllib2.HTTPError: HTTP Error 404: Not Found

問題の原因を突き止める手掛かりはあまりありません。アクセスしようとしている URL がわかりません。「pubmed entrez urllib2.HTTPError: HTTP Error 404: Not Found」を検索すると、8 つの結果が得られますが、関連するものはありません (このスレッドを除く)。

4

1 に答える 1

1

例は私のために働きます。「エラー404」は非常に珍しく、Entrezで見たネットワークの問題の典型ではありませんが、一時的なNCBIの問題のようです。一般に、どのネットワークリソースでも、何かが壊れていることを心配する前に、数時間または1日与えてください。

購読したいEntrezUtilitiesの発表メーリングリストもありますが、最近計画されたサービス停止があった場合は、ここでは言及されていません: http ://www.ncbi.nlm.nih.gov/mailman/listinfo/utilities -発表

于 2012-12-31T12:52:46.620 に答える