Python Animation - Can change camera location but not always pointing correctly
So.. I don't know why, but the solution that worked for me was to split the keyframe assignment into two separate loops.

Investigations made it appear as though the 'camera look' function just wasn't being called.. "in time?" I'm not sure. Working code below.

for i in range(10):
  bpy.context.scene.frame_set(i)

  x, y, z = randint(6,15), randint(-6,16), randint(6,35)
  cam.location = (x, y, z)
  cam.keyframe_insert('location')


for i in range(10):
  bpy.context.scene.frame_set(i)

  look_at(cam, cp)
  cam.keyframe_insert('rotation_euler')