J'utilise Python 3.1, si cela aide.
Quoi qu'il en soit, j'essaie de récupérer le contenu de this page Web. J'ai googlé pendant un petit moment et essayé différentes choses, mais elles ne fonctionnaient pas. Je suppose que cela devrait être une tâche facile, mais ... je ne peux pas l'obtenir. : /.
Résultats de urllib, urllib2:
>>> import urllib2
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import urllib2
ImportError: No module named urllib2
>>> import urllib
>>> urllib.urlopen("http://www.python.org")
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
urllib.urlopen("http://www.python.org")
AttributeError: 'module' object has no attribute 'urlopen'
>>>
Merci Jason. :RÉ.
import urllib.request
page = urllib.request.urlopen('http://services.runescape.com/m=hiscore/ranking?table=0&category_type=0&time_filter=0&date=1519066080774&user=zezima')
print(page.read())
Comme vous utilisez Python 3.1, vous devez utiliser les nouvelles API Python 3.1 .
Essayer:
urllib.request.urlopen('http://www.python.org/')
Alternativement, il semble que vous travailliez à partir d’exemples de Python 2. Ecrivez-le en Python 2, puis utilisez l'outil 2to3 pour le convertir. Sous Windows, 2to3.py se trouve dans\python31\tools\scripts. Quelqu'un d'autre peut-il indiquer où trouver 2to3.py sur d'autres plateformes?
Modifier
Ces jours-ci, j'écris du code compatible Python 2 et 3 en utilisant six.
from six.moves import urllib
urllib.request.urlopen('http://www.python.org')
En supposant que vous en ayez six installés, cela fonctionne à la fois sur Python 2 et Python 3.
La meilleure façon de faire cela ce jour-là est d'utiliser la bibliothèque 'demandes':
import requests
response = requests.get('http://hiscore.runescape.com/index_lite.ws?player=zezima')
print (response.status_code)
print (response.content)
Si tu me demandes. essaye celui-là
import urllib2
resp = urllib2.urlopen('http://hiscore.runescape.com/index_lite.ws?player=zezima')
et lire à la manière normale, à savoir
page = resp.read()
Bonne chance quand même
Mechanize est un excellent package pour "agir comme un navigateur", si vous souhaitez gérer l'état des cookies, etc.
Vous pouvez utiliser urlib2 et analyser le code HTML vous-même.
Ou essayez Beautiful Soup pour effectuer une partie de l'analyse syntaxique pour vous.
Une solution qui fonctionne avec Python 2.X et Python 3.X:
try:
# For Python 3.0 and later
from urllib.request import urlopen
except ImportError:
# Fall back to Python 2's urllib2
from urllib2 import urlopen
url = 'http://hiscore.runescape.com/index_lite.ws?player=zezima'
response = urlopen(url)
data = str(response.read())
Supposons que vous souhaitiez obtenir le contenu d'une page Web. Le code suivant le fait:
# -*- coding: utf-8 -*-
# python
# example of getting a web page
from urllib import urlopen
print urlopen("http://xahlee.info/python/python_index.html").read()