Import object without bpy.ops.wm.link_append
Since Blender 2.72, there are two separate operators:


bpy.ops.wm.link()
bpy.ops.wm.append()


Apart from operators, there's also a lower-level API to import datablocks (selectively) from .blends: bpy.data.libraries.load()

The docs include a few examples how you can use this function.