Set Driver Target Object from the Console
Working with drivers in Python isn't necessarily fun, unless you also create them directly from your script. If you do that, you can catch the driver objects as return values from the creation function, and use that object to create variables, set targets, and whatnot. Here is a quick example for how to do this:

import bpy

# get the objects from the scene
path = bpy.data.objects.get("NurbsCurve")
arm = bpy.data.objects.get("Armature")

# if both exist, create the driver
if path and arm:
    print('Objects exist, continuing by adding driver')

    # create a driver for all location channels
    drv_x, drv_y, drv_z = arm.pose.bones['Bone'].driver_add('location')

    # set the driver type to MAXIMUM_VALUE
    drv_x.driver.type='MAX'

    # create a variable to control something
    var = drv_x.driver.variables.new()

    # set the target object to the NURBS path
    # note that targets is a list, depending on the driver type more than one value
    # could be required
    var.targets[0].id = path

    # set the target property to the x location of that path object
    var.targets[0].data_path='location.x'


Note that I'm also unpacking the list to drv_x, drv_y and drv_z. This is just a way of naming the three driver objects directly at creation time. If you catch the result in one object called drv, you can access the driver for the X location by using an index: drv[0].

Regarding the Python Tooltip, the line above the one you quoted is actually more helpful: It says DriverTarget.id. This tells you that the object needs to be of type DriverTarget, then you'll find an id property on it. var.targets[0] is of such a type.