python - 爬虫获取网站数据,出现乱码怎么解决。
迷茫
迷茫 2017-04-18 10:32:43
0
4
615
#!/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

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

모든 응답(4)
Ty80

str = response.read()에는 두 가지 문제가 있습니다.
1. str은 내장 키워드이므로 다른 변수 이름으로 변경해야 합니다.
2. 웹페이지 소스 코드의 인코딩 방법을 확인하세요. utf- 8read() 뒤에 .decode('utf-8')를 추가하고, 그렇지 않으면 그에 따라 디코딩할 수 있습니다

이런 종류의 작은 프로그램을 위한 함수를 작성하는 것이 클래스를 사용하든 구현하든 관계없이 클래스를 사용하는 것보다 더 편리하다는 작은 제안이 있습니다.

巴扎黑

숭고한 텍스트를 사용하고 계시나요?
참고

伊谢尔伦

디코드가 아닌 인코딩이어야 하며 변수 이름은 실제로 내장 키워드 이름과 동일합니다

刘奇

인코딩해야 합니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿