How to round a mesh? I have objects in Blender, with a limited amount of faces. Several of the objects have rounded parts (like on the screenshot below). When rendering this - even with smooth shading - the "rounded" parts look blocky. I would like them the be nicely curved. Obviously I could manually model some more faces. Given the large amount of objects, that's a lot of work. So I'd like to find an automated way. 

I already tried the smooth modifier as well as subsurf (--> too much deformation). Nothing works. 

Would anybody know how this could be achieved with e.g. a bit of Python code or so? I have a lot of Python experience, so integrating some Python source is no issue if that can provide a solution. 

Thanks a lot!
The standard way to deal with this is to help out the subsurface modifier do its job. You can, for example


Mark your desired hard edges as creases prior to using the subsurf modifier.


Or 


You can just create edge loops near your curves to control how sharp they should be, so that subsurf doesn't oversmooth them.


See this youtube video "Tutorial: Sharp Edges on Smooth Objects"
https://www.youtube.com/watch?v=HgzmSnQt0bQ

I'm not a Blender expert in any way, but I hope it helps.