Thanks Osvaldo, now it works perfectly. I even managed to figured out how
to load sdf files instead of pdb.

One question - in the code where there is ### insert your code here ###, I
paste my PyMol settings, but I get an "invalid syntax" error. For example,
I put "set light_count,8" and that results in the before-mentioned error
message.

On Mon, Jun 8, 2015 at 2:22 PM, Osvaldo Martin <aloctavo...@gmail.com>
wrote:

> Hi Praz,
>
> Sorry. Please use this new version of the script.
>
> import __main__
> __main__.pymol_argv = ['pymol','-qc']
> import pymol
> from pymol import cmd
> pymol.finish_launching()
> import glob
> import os
>
> path = os.path.dirname(pymol.__script__)
>
> cmd.delete('all')
> pdb_files = glob.glob(os.path.join(path, '*.pdb'))
> for pdb in pdb_files:
>     cmd.load(pdb)
>     ### insert your code here ###
>     cmd.png('%s' % pdb.split('.')[0])
>     cmd.delete('all')
>
>
> The last didn’t work because I was expecting you to run the script just as
> any Python program (and not from PyMOL) using one of this two options
> <http://stackoverflow.com/questions/9493086/python-how-do-you-run-a-py-file>.
> Sorry about not explaining this before. The version I am sending you know
> should work with any of the 3 running methods.
>
> Cheers,
>
> Osvaldo.
>
> On Mon, Jun 8, 2015 at 7:27 AM, Praz Nina <praz...@gmail.com> wrote:
>
> Thank you Osvaldo.
>>
>> However, as a beginner, I am having problems with getting this to work. I
>> pasted your script in a file (script.txt) and placed it in the same folder
>> where the pdb files are. Then I ran PyMol and typed "run
>> c:\somefolder\script.txt", but I all get is a black screen and no .png
>> files are generated.
>>
>> On Sat, Jun 6, 2015 at 2:42 AM, Osvaldo Martin <aloctavo...@gmail.com>
>> wrote:
>>
>>> Hi Praz,
>>>
>>> When I want to process several files, do complex or repetitive tasks I
>>> prefer to write a Python script and access the PyMOL functions using the
>>> PyMOL API, as in the code below.
>>>
>>> This example will upload all the pdb files in the folder where the
>>> script is located, one file at a time, save the current image as a png file
>>> and then delete the uploaded molecule.
>>>
>>> import __main__
>>> __main__.pymol_argv = ['pymol','-qc']
>>> import pymol
>>> from pymol import cmd
>>> pymol.finish_launching()
>>> import glob
>>>
>>> pdb_files = glob.glob('*.pdb')
>>> for pdb in pdb_files:
>>>     cmd.load(pdb)
>>>     ### insert your code here ###
>>>     cmd.png('%s' % pdb.split('.')[0])
>>>     cmd.delete('all')
>>>
>>>
>>> Cheers,
>>> Osvaldo.
>>>
>>> On Fri, Jun 5, 2015 at 7:50 PM, Praz Nina <praz...@gmail.com> wrote:
>>>
>>>> Hi all,
>>>>
>>>> I'm a beginner at PyMol, but I'm wondering if a batch action like this
>>>> would be possible: If I have a bunch of .sdf and .pdb files in a folder,
>>>> and I want to apply a specific "look" to all of them (I've written the
>>>> parameters regarding light, field of view etc.), is it possible to batch
>>>> process all of them and output a .png file of each of those structures?
>>>>
>>>> Likewise, if I want to make a movie from all of those structures (also
>>>> have written a script, 450 frames, 360 rotation), can I process these files
>>>> in a batch?
>>>>
>>>> Thanks,
>>>> Praz
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>>
>>>> _______________________________________________
>>>> PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
>>>> Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
>>>> Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net
>>>>
>>>
>>>
>>  ​
>
------------------------------------------------------------------------------
_______________________________________________
PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net

Reply via email to