Python爬取中文頁面的時候出現的亂碼問題 續

2022-08-17 05:57:19 字數 704 閱讀 9119

在這一篇裡面我做乙個總結:

1、首先應該看乙個案例

我把資料寫在.py檔案中:

#coding:utf-8

s = 'hehe測試中文字元'

ss = u'hehe測試中文字元'

uu = s.decode('utf-8')

print s  #輸出亂碼

print uu  #正常

print ss  #正常

這裡需要對中文資料進行編碼,輸出正常

2、我們針對爬取回來的資料

在讀取頁面資料的時候已經對其編碼 response.read().decode('utf-8')

在把資料寫入到資料庫的時候,只需要把資料庫的連線指定為 utf-8 就可以

mysqldb.connect(host=v_host,port=int(v_port),user=v_user,passwd=v_passwd,db=v_db,charset='utf8')

3、可以直接把讀取來的資料直接寫入到資料庫中,不會出現亂碼

py檔案的其他地方不需要在進行其他的編碼,僅僅是在讀取response裡面的資料的時候進行編碼一次

4、在設定mysql編碼的時候切記是:utf8,中間沒有橫槓

不然會報錯:_mysql_exceptions.operationalerror: (2019, 「can』t initialize character set utf-8 

爬取多個頁面的資料

如下 coding utf8 匯入requests庫,取別名res import requests as res 匯入bs4包,取別名bs from bs4 import beautifulsoup as bs 匯入資料庫驅動包 import mysqldb 宣告頁面從哪開始 j 1 迴圈遍歷每個頁...

關於python 爬取 ajax頁面

安裝只要按部就班的點next就好 conda的環境管理功能允許我們同時安裝若干不同版本的python,並能自由切換。對於上述安裝過程,假設我們採用的是python 2.7對應的安裝包,那麼python 2.7就是預設的環境 預設名字是root,注意這個root不是超級管理員的意思 假設我們需要安裝p...

python爬取html中文亂碼

環境 python3.6 爬取 爬取 import requests url req requests.get url print req.text 爬取結果 如上,title內容出現亂碼,自己感覺應該是編碼的問題,但是不知道如何解決,於是上網檢視 參考 問題找到,原來是reqponse heade...