Package Bio :: Package PDB :: Module PDBList' :: Class PDBList
[hide private]
[frames] | no frames]

Class PDBList

source code

object --+
         |
        PDBList


This class provides quick access to the structure lists on the
PDB server or its mirrors. The structure lists contain
four-letter PDB codes, indicating that structures are
new, have been modified or are obsolete. The lists are released
on a weekly basis.

It also provides a function to retrieve PDB files from the server.
To use it properly, prepare a directory /pdb or the like,
where PDB files are stored.

If you want to use this module from inside a proxy, add
the proxy variable to your environment, e.g. in Unix:
export HTTP_PROXY='http://realproxy.charite.de:888'
(This can also be added to ~/.bashrc)

Instance Methods [hide private]
 
__init__(self, server='ftp://ftp.wwpdb.org', pdb='/home/tra/biopython-1.64/usr/local/lib/python2.7/dist-packages', obsolete_pdb=None)
Initialize the class with the default server or a custom one.
source code
 
download_entire_pdb(self, listfile=None)
Retrieve all PDB entries not present in the local PDB copy.
source code
 
download_obsolete_entries(self, listfile=None)
Retrieve all obsolete PDB entries not present in the local obsolete PDB copy.
source code
 
get_all_entries(self)
Retrieves a big file containing all the PDB entries and some annotation to them.
source code
 
get_all_obsolete(self)
Returns a list of all obsolete entries ever in the PDB.
source code
 
get_recent_changes(self)
Returns three lists of the newest weekly files (added,mod,obsolete).
source code
 
get_seqres_file(self, savefile='pdb_seqres.txt')
Retrieves a (big) file containing all the sequences of PDB entries and writes it to a file.
source code
 
get_status_list(self, url)
Retrieves a list of pdb codes in the weekly pdb status file from the given URL.
source code
 
retrieve_pdb_file(self, pdb_code, obsolete=False, pdir=None)
Retrieves a PDB structure file from the PDB server and stores it in a local file tree.
source code
 
update_pdb(self)
I guess this is the 'most wanted' function from this module.
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  PDB_REF = '\n The Protein Data Bank: a computer-based archi...
  alternative_download_url = 'http://www.rcsb.org/pdb/files/'
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, server='ftp://ftp.wwpdb.org', pdb='/home/tra/biopython-1.64/usr/local/lib/python2.7/dist-packages', obsolete_pdb=None)
(Constructor)

source code 
Initialize the class with the default server or a custom one.

Overrides: object.__init__

download_entire_pdb(self, listfile=None)

source code 
Retrieve all PDB entries not present in the local PDB copy.

Writes a list file containing all PDB codes (optional, if listfile is
given).

download_obsolete_entries(self, listfile=None)

source code 
Retrieve all obsolete PDB entries not present in the local obsolete
PDB copy.

Writes a list file containing all PDB codes (optional, if listfile is
given).

get_all_entries(self)

source code 
Retrieves a big file containing all the
PDB entries and some annotation to them.
Returns a list of PDB codes in the index file.

get_all_obsolete(self)

source code 
Returns a list of all obsolete entries ever in the PDB.

Returns a list of all obsolete pdb codes that have ever been
in the PDB.

Gets and parses the file from the PDB server in the format
(the first pdb_code column is the one used). The file looks
like this:

 LIST OF OBSOLETE COORDINATE ENTRIES AND SUCCESSORS
OBSLTE    31-JUL-94 116L     216L
...
OBSLTE    29-JAN-96 1HFT     2HFT
OBSLTE    21-SEP-06 1HFV     2J5X
OBSLTE    21-NOV-03 1HG6
OBSLTE    18-JUL-84 1HHB     2HHB 3HHB
OBSLTE    08-NOV-96 1HID     2HID
OBSLTE    01-APR-97 1HIU     2HIU
OBSLTE    14-JAN-04 1HKE     1UUZ
...

get_recent_changes(self)

source code 
Returns three lists of the newest weekly files (added,mod,obsolete).

Reads the directories with changed entries from the PDB server and
returns a tuple of three URL's to the files of new, modified and
obsolete entries from the most recent list. The directory with the
largest numerical name is used.
Returns None if something goes wrong.

Contents of the data/status dir (20031013 would be used);
drwxrwxr-x   2 1002     sysadmin     512 Oct  6 18:28 20031006
drwxrwxr-x   2 1002     sysadmin     512 Oct 14 02:14 20031013
-rw-r--r--   1 1002     sysadmin    1327 Mar 12  2001 README

get_status_list(self, url)

source code 
Retrieves a list of pdb codes in the weekly pdb status file
from the given URL. Used by get_recent_files.

Typical contents of the list files parsed by this method is now
very simply one PDB name per line.

retrieve_pdb_file(self, pdb_code, obsolete=False, pdir=None)

source code 
Retrieves a PDB structure file from the PDB server and
stores it in a local file tree.

The PDB structure's file name is returned as a single string.
If obsolete == True, the file will be saved in a special file tree.

@param pdir: put the file in this directory (default: create a PDB-style directory tree)
@type pdir: string

@return: filename
@rtype: string

update_pdb(self)

source code 

I guess this is the 'most wanted' function from this module.
It gets the weekly lists of new and modified pdb entries and
automatically downloads the according PDB files.
You can call this module as a weekly cronjob.


Class Variable Details [hide private]

PDB_REF

Value:
'''
    The Protein Data Bank: a computer-based archival file for macromol\
ecular structures.
    F.C.Bernstein, T.F.Koetzle, G.J.B.Williams, E.F.Meyer Jr, M.D.Bric\
e, J.R.Rodgers, O.Kennard, T.Shimanouchi, M.Tasumi
    J. Mol. Biol. 112 pp. 535-542 (1977)
    http://www.pdb.org/.
    '''