So after struggling with the same problem for days on end, I came upon this post: http://osdir.com/ml/selenium-users/2011-07/msg01149.html. Turns out that it may be a permissions error. Try running your python code as a root user
Edit: Thanks steve! "Got to the bottom of this one. The issue was not directly to do with permissions but with an environment variable which was not read when we ran as root. We have the http_proxy environment variable set with no exclusions for localhost. This meant that the Python client was attempting to connect to the WebDriver via the proxy. This was not an issue when run as root because http_proxy was not set.
This issue can be fixed by setting the no_proxy environment variable for localhost.
Hope this is a help to anybody that may be experiencing the same issue.
Steve" http://osdir.com/ml/selenium-users/2011-07/msg01169.html