Python3.x 爬蟲學習筆記——判斷網頁的編碼方式
阿新 • • 發佈:2019-02-12
(以後寫部落格儘量用MarkDown,我還是太low了)
更新:
後來發現這玩意沒有加上headers,有些網頁打不開啊,於是就加上了
程式碼如下
def find_type(url,Headers): data1 = urllib.request.urlopen(urllib.request.Request(url,headers = Headers)).read() chardit1 = chardet.detect(data1) if chardit1['encoding'] == "utf-8" or chardit1['encoding'] == "UTF-8": return "UTF-8" else: return "GBK"
----------------------------華麗分割線-------------------------------------------
Python爬蟲學的比當時學Android的時候彎路走的少了太多了,但是中間多多少少還是會遇到一些問題,判斷網頁的編碼方式就是其中之一,百度之後很簡單就搞定了, 但是實在感覺沒什麼可寫的,就這樣開個頭吧(雖然很low,但是最近確實沒有學什麼有營養的東西,所以就這樣了)。
判定用到了detect函式,首先要import re
import re
然後是一個 函式,應該是很容易看懂的
def find_type(url): data1 = urllib.request.urlopen(url).read()#正常的read一個url chardit1 = chardet.detect(data1)#分析data1的編碼方式 if chardit1['encoding'] == "utf-8" or chardit1['encoding'] == "UTF-8":
這裡,由於GBK可以解析GBxxxx之類的,預設不是UTF8就是GBK了,但是有些網頁還是沒辦法解析,求大神指點
return "UTF-8"
else:
return "GBK"
就這樣,及其不認真的第一篇博文,感覺自己是個傻逼(笑)