RCSB PDBのサイトからPDB(.cif)をまとめて取得する簡易script

Grüezi wohl,

 

 一年位前まで頑張って勉強してたKNIME x PDBですが、PDB connectorが仕様変更になってます。いざ使おうって時にこれだから...

 

 というわけで、めっちゃ簡易ですがpython scriptを置いておきます。

from IPython.display import HTML
from pypdb import *
import time
from Bio.PDB import PDBList
from tqdm import tqdm

# 検索用のkeywordsを定義

q = input('keywords? ')

# PDB IDのリストを取得、ID数を表示
pdb_ids = Query(q).search()
print('the number of PDB IDs are ' + str(len(pdb_ids)))

# directoryを作成

pdbl = PDBList()
dir_name = q + '/'

# リストをdownloadする? yes/no

download = input('Download PDB files? y/n ')
if download == 'y':
for pdb_id in tqdm(pdb_ids, position=0):
pdbl.retrieve_pdb_file(pdb_id, pdir=dir_name)
time.sleep(10)
print('fertig')

 

上記のスクリプトをTextEditか何かのアプリケーションにコピペして、PDB.pyみたいな名前で保存します。

それをterminalからpythonで実行します。

 

参考にしたのはこちらのpypdbっていうライブラリと、


github.comgithub.com


こちらのbiopythonの使い方です。


bi.biopapyrus.jpbi.biopapyrus.jp


 

pythonの方がネットに落ちてる情報量が多いから、不測の事態に陥ってもなんとかはなりそう...

 あとはadvanced searchとかに対応したり、リガンドの抜き出しとかしたいかな。

調べたい本題からどんどん遠ざかっていく...

 

Anyway, have a nice time. Bis Bald. tschüß.