Are you tired of using visualization software, or full blown suites just to separate protein chains / ligands ? Are you tired of organizing the mess of molecules into separate folders ?

PDBaser does this for you !

What does it do ?

PDBaser reads raw .pdb and .ent files as downloaded from the pdb, extracts pure protein chains and heteroatoms (ligands and others) and removes water molecules, and then saves everything in a directory named as the original input filename.

Who is this for ?

This tool is perfect for RMSD reliability test preparation, where a large number of proteins and their ligands are needed. It can also help people who are not very accustomed to command line interfaces, and aren't willing to pay a (usually high) premium for other software.



For Windows users, PDBaser has a precompiled version, it can be found in the releases category, and can be installed on windows 7 SP1 / 8 / 8.1 / 10 and only requires Microsoft visual C++ 2015 x86.

Linux / MacOS and other Unix / Unix-like

The quickest way to get PDBaser running on those systems is by running the msi installer and then PDBaser_GUI.exe through Wine (Tested on Wine 6.0.1, Only works on a 64bit prefix). However, PDBaser_GUI.py (from GUI/Build/) is not OS dependant, and will probably run on any operating system provided the envorinmoent is correctly setup.

Since software distribution on Linux is a nightmare, and i do not have a mac system to package PDBaser for, you will have to either use Wine, or deal with setting up the environment from scratch.

  • 1- First, you need a working python environment with support for Tkinter (i'm looking at you, Arch Linux)
  • 2- Install BioPython and Pygubu from pip (pip install biopython / pip install pygubu)
  • 3- You need to build openbabel 3.1.1 with depiction support (Cairo) and python bindings from source, and then install it from pip (openbabel==3.1.1).

If everything is setup correctly, running PDBaser_GUI.py should work.


  • Folder organization (Outputs are organized in a single folder named as the pdb file name).
  • Support for compressed pdb / ent files.
  • 2D Depiction and PNG output.
  • Outputs residues in most popular formats (pdb, sdf, mol2, smiles).
  • Multiple residue extraction at once is possible, chain only extraction with no residues is also possible.
  • Hydrogen generation for extracted residues is available (Except for SMILES format).
  • Support for downloading proteins from the PDB directly.



  • No metadata extraction (Header, comments etc ...), only atom 3D poses with the molecule code in the PDB.
  • Only .pdb / .ent inputs and their compressed (.gz) form are supported, this is done by design as most proteins come only in pdb and ent formats, however residue outputs can have different formats (pdb, mol2, sdf, smiles).
  • there is a known bug where extracting a ligand in SMILES format does not generate a name for it, i'm gonna fix it as soon as i finish some work on my studies.


For Windows x86/x64 : A binary setup is available in releases section.

For Unix/Unix-like(Linux/MacOS etc..) : Source is available in releases section, although i recommend installing the windows version and using it through Wine.