Python obtenir tous les liens d'une page de résultat de recherche de google
je veux créer un script qui renvoie toutes les url trouvées dans une page google par exemple , je crée donc ce script : (à l'aide de 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"]
et il de retour cette 403 forbidden résultat :
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
une idée pour éviter cette erreur ou une autre methode pour obtenir l'url à partir du résultat de recherche ?
- Vous avez probablement besoin de se un agent utilisateur de sorte qu'il pense de votre navigateur web.
Vous devez vous connecter pour publier un commentaire.
Pas de problème à l'aide de les demandes
Certains des liens des liens sont comme
search%:http://
où la fin de l'un rejoint l'autre, donc nous avons besoin de diviser ensuite à l'aide de re