Vista 64 bits
Python 3,1Python 3.1 code et erreur
from urllib import request
a = request.urlopen('http://www.marketwatch.com/investing/currency/CUR_USDYEN').read(20500)
b = a[19000:20500]
idx_pricewrap = b.find('pricewrap')
context = b[idx_pricewrap:idx_pricewrap+80]
idx_bgLast = context.find('bgLast')
rate = context[idx_bgLast+8:idx_bgLast+15]
print(rate)
Traceback (most recent call last): File "c:\P31Working\test_urllib.py", line 4, in idx_pricewrap = b.find('pricewrap') TypeError: expected an object with the buffer interface Process terminated with an exit code of 1
Je ne sais pas ce que cela signifie erreur.
Aidez-nous s'il vous plaît.
Merci beaucoup. Avant que j'ai vu votre réponse, j'ai trouvé un exemple pertinent dans les documents, qui je pense fait ce que vous suggérez d'une manière différente. Je vais répondre à ma propre question pour le montrer. – NotSuper
@NotSuper: Oui, le décodage du site Web en un objet Unicode est également une bonne solution. En fait, c'est la meilleure solution, mais pour les sites HTML, vous préférerez peut-être utiliser une bibliothèque d'analyseurs capable de détecter automatiquement le jeu de caractères (à partir de l'en-tête HTTP ou de la définition de charset au lieu du format UTF-8). – AndiDog
Je voudrais apprendre à utiliser une bibliothèque d'analyseurs. Pourriez-vous me montrer quelques exemples? Je suppose que je pourrais le faire avec ce que 3.1 a? – NotSuper