Urllib2 get garbled string instead of page source
本问题已经有最佳答案,请猛点这里访问。
当我使用urllib2抓取网页时,我无法获取页面源,但是一个乱码的字符串,我无法理解它是什么。 我的代码如下:
1 2 3 4 | url = 'http://finance.sina.com.cn/china/20150905/065523161502.shtml' conn = urllib2.urlopen(url) content = conn.read() print content |
任何人都可以帮我找出什么是错的? 非常感谢。
更新:我认为你可以运行上面的代码来获得我得到的。 以下是我在python中得到的:
{G≤0≤150≤C0≤K≤z≤%E
|?B ?? |?F?oeB?'?? M6?
????????;??????????大号MV: - :]0Z WT6+ Y + LV????VisV:P,Y'
?米P [8-8米3/ ??? Y]???? F |???X?法] S op1M?imm5??克??????K#|??????????????号码:?
(?P?FThq1 ?? N4 ?? P ??? X ?? L D F ??? 6 ?? z?0 [?} ?? z ?? | ?? +?pR"s??LQ??&安培;??克·V[((j??? W1@ - 克8-???'V + KS0?????%???5)
这就是我的预期(使用curl):
1 2 3 4 5 | <html> <head> <link rel="mask-icon" sizes="any" href="http://www.sina.com.cn/favicon.svg" color="red"> <meta charset="gbk"/> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> |
以下是使用
1 2 3 4 5 6 7 8 9 10 | import requests from bs4 import BeautifulSoup #Url to request url ="http://finance.sina.com.cn/china/20150905/065523161502.shtml" r = requests.get(url) #Use BeautifulSoup to organise the 'requested' content soup=BeautifulSoup(r.content,"lxml") print soup |