#!/usr/bin/python
# -*- coding: utf-8 -*-
import urllib2
import re
import HTMLParser
class WALLSTREET:
def __init__(self, baseUrl):
self.url = baseUrl
def get_html_content(self):
url = self.url
response = urllib2.urlopen(url)
str = response.read()
print str
baseUrl="https://wallstreetcn.com/live/global" #华尔街见文url
ws = WALLSTREET(baseUrl)
ws.get_html_content()
以上是代码,写的很简单,但是print出来的是乱码
尝试了 print str.decode(“utf-8“”)
但是报错
UnicodeDecodeError: 'utf8' codec can't decode byte 0x8b in position 1: invalid start byte
str = réponse.read() a deux problèmes :
1. str est un mot-clé intégré et doit être remplacé par un autre nom de variable
2 Vérifiez la méthode d'encodage du code source de la page Web. Si c'est utf- 8Add .decode('utf-8') après read(), si c'est autre, il peut être décodé en conséquence
Une petite suggestion est qu'écrire une fonction pour ce genre de petit programme sera plus pratique que d'utiliser une classe, qu'elle l'utilise ou l'implémente
Je suppose que vous utilisez un texte sublime ?
Référez-vous à ceci
Il devrait être encodé au lieu de décoder, et le nom de votre variable est en fait le même que le nom du mot-clé intégré
Il devrait être encodé