You can import items from another blend file without exporting to other file formats. There are two methods that offer different benefits.
. This will copy the selected item/s into the current blend file.File->Append
. This will allow you to use the external item/s in the current blend file, this is referred to as a linked library. This differs from append in that the item data stays in the external file while it is visible in the current file. Note that editing of the item can only be done in it's original file which will then be visible in the blend file it was linked into. To animate an item, a proxy is made to allow limited editing of the external object.File->Link
In both cases when a blend file is selected in the file browser, you will get to choose different items within the blend file. This allows you to choose individual objects, materials, groups...

Note that importing an object will also import dependencies, such as the armature used in the armature modifier that the object has as well as the material it uses.
I realized I don't need to open the binary blender file and parse it in order to use the objects. Blender has its own python installation, so I put a python script inside the folder path_to_blender/version/scripts/addons , I can execute it in the command line as follows:
blender.exe --background --python ./version/scripts/addons/superScript.py
Next, if you have a .blend file you want to read from your script, put it after the background parameter as follows:
blender.exe --background myFile.blend --python ./version/scripts/addons/superScript.py
And inside your python script do the following:
import bpy
import os
for ob in bpy.context.scene.objects:
print("object name: ", ob.data.name)
In this example I'm printing all the objects inside the scene in the .blend file