Are you sure python is in the path when running from cron? It's often the case that your cron job's environment is stripped down compared to your normal shell environment since it doesn't execute the normal environment setup scripts. Does it work if you specify the full path to python?