Python obtiene todos los enlaces de una página de resultados de búsqueda de Google

Quiero crear un script que devuelva todas las URL encontradas en una página de Google, por ejemplo, así que creo este script: (usando BeautifulSoup)

import urllib2
from BeautifulSoup import BeautifulSoup
page = urllib2.urlopen("https://www.google.dz/search?q=see")
soup = BeautifulSoup(page.read())
links = soup.findAll("a")
for link in links:
    print link["href"]

y devuelve este resultado prohibido 403:

Traceback (most recent call last):
  File "C:\Python27\sql\sql.py", line 3, in <module>
    page = urllib2.urlopen("https://www.google.dz/search?q=see")
  File "C:\Python27\lib\urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
  File "C:\Python27\lib\urllib2.py", line 400, in open
    response = meth(req, response)
  File "C:\Python27\lib\urllib2.py", line 513, in http_response
    'http', request, response, code, msg, hdrs)
  File "C:\Python27\lib\urllib2.py", line 438, in error
    return self._call_chain(*args)
  File "C:\Python27\lib\urllib2.py", line 372, in _call_chain
    result = func(*args)
  File "C:\Python27\lib\urllib2.py", line 521, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden

¿Alguna idea para evitar este error u otro método para obtener las URL del resultado de búsqueda?

Respuestas a la pregunta(2)

Su respuesta a la pregunta