在我們爬取網頁的時候,可能會遇到亂碼的問題,解決這種的亂碼的問題有一種通用的方法
import requestsfrom lxml import etree
url = ''
headers =
response = requests.get(url=url,headers=headers)
#手動設定響應資料的編碼
# response.encoding = 'utf-8'
page_text = response.text
tree = etree.html(page_text)
li_list = tree.xpath('//div[@class="slist"]/ul/li')
for li in li_list:
img_src = li.xpath('./a/img/@src')[0]
img_name = li.xpath('./a/b/text()')[0]
#通用性
img_name = img_name.encode('iso-8859-1').decode('gbk')
print(img_src,img_name)
爬蟲遇到的問題
特殊字串處理的問題 第一佳大雞排 新街口店 黃燜雞公尺飯 被識別成資料夾名 處理特殊字元 dex0 line 6 find if dex0 1 line 6 line 6 0 dex0 約翰大叔 比薩 龍躍店 輸出時,有特殊字元,無法輸出。處理特殊字元 dex1 line 6 find if dex...
Python爬蟲處理抓取資料中文亂碼問題
亂碼原因 因為你的檔案宣告為utf 8,並且也應該是用utf 8的編碼儲存的原始檔。但是windows的本地預設編碼是cp936,也就是gbk編碼,所以在控制台直接列印utf 8的字串當然是亂碼了。解決方法 在控制台列印的地方用乙個轉碼就ok了,列印的時候這麼寫 print myname.decod...
Python爬蟲處理抓取資料中文亂碼問題
亂碼原因 因為你的檔案宣告為utf 8,並且也應該是用utf 8的編碼儲存的原始檔。但是windows的本地預設編碼是cp936,也就是gbk編碼,所以在控制台直接列印utf 8的字串當然是亂碼了。解決方法 在控制台列印的地方用乙個轉碼就ok了,列印的時候這麼寫 print myname.decod...