Mon frère voulait donc que j'écrive un robot d'exploration en Python (autodidacte) et je connais le C++, Java et un peu de HTML. J'utilise la version 2.7 et je lis la bibliothèque python, mais j'ai quelques problèmes 1. Le concept httplib.HTTPConnection
Et request
est nouveau et je ne comprends pas s'il télécharge un script html comme un cookie ou une instance. Si vous faites les deux, obtenez-vous la source d'une page de site Web? Et quels sont les mots que j'aurais besoin de savoir pour modifier la page et retourner la page modifiée.
Juste pour le fond, je dois télécharger une page et remplacer n'importe quel img par ceux que j'ai
Et ce serait bien si vous pouviez me dire votre avis sur 2.7 et 3.1
Utilisez Python 2.7, a plus de bibliothèques tierces pour le moment. ( Modifier: voir ci-dessous).
Je vous recommande d'utiliser le module stdlib urllib2
, il vous permettra d'obtenir confortablement des ressources Web. Exemple:
import urllib2
response = urllib2.urlopen("http://google.de")
page_source = response.read()
Pour analyser le code, consultez BeautifulSoup
.
BTW: que voulez-vous faire exactement:
Juste pour le fond, je dois télécharger une page et remplacer n'importe quel img par ceux que j'ai
Edit: C'est 2014 maintenant, la plupart des bibliothèques importantes ont été portées, et vous devez absolument utiliser Python 3 si vous pouvez. python-requests
est une très belle bibliothèque de haut niveau qui est plus facile à utiliser que urllib2
.
Un exemple avec python3
et la bibliothèque requests
comme mentionné par @leoluk:
pip install requests
Script req.py:
import requests
url='http://localhost'
# in case you need a session
cd = { 'sessionid': '123..'}
r = requests.get(url, cookies=cd)
# or without a session: r = requests.get(url)
r.content
Maintenant, exécutez-le et vous obtiendrez la source html de localhost!
python3 req.py
La première chose que vous devez faire est de lire le spécification HTTP qui expliquera ce que vous pouvez vous attendre à recevoir sur le fil. Les données renvoyées à l'intérieur du contenu seront la page Web "rendue", pas la source. La source pourrait être un JSP, un servlet, un script CGI, bref, à peu près n'importe quoi, et vous n'y avez pas accès. Vous obtenez uniquement le code HTML que le serveur vous a envoyé. Dans le cas d'une page HTML statique, alors oui, vous verrez la "source". Mais pour toute autre chose, vous voyez le code HTML généré, pas la source.
Quand tu dis modify the page and return the modified page
Que voulez-vous dire?