頁面數據寫入數據庫編碼問題
阿新 • • 發佈:2017-11-15
編碼
最近寫了一個小的爬蟲代碼。想要把抓取到的數據放入數據庫中。發現報錯
首先 百度,發現是由於編碼問題造成的 先看數據庫編碼
show variables
like
‘character_set_database‘
;
show
create
table
<表名>;
發現果然編碼不對,遂將編碼修改為UTF-8
繼續執行腳本,發現依然報錯。心想是不是頁面數據格式不是UTF-8 中間還需要做什麽轉換?
發現頁面數據格式也是UTF-8。。。。
遂繼續百度。。終於 功夫不負有心人,發現了一個回答。
帶著試一試的心態修改編碼。
sudo find / -name my.cnf 找到配置文件(使用配置文件修改更快)
在原文中添加以下內容:(mysql和client是原來配置文件裏面沒有的需要自己手動添加)
[client] default-character-set = utf8mb4 [mysql]default-character-set = utf8mb4 [mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci init_connect=‘SET NAMES utf8mb4‘
最後重啟服務:sudo service mysql restart
進入mysql查看結果:
SHOW VARIABLES WHERE Variable_name LIKE ‘character\_set\_%‘ OR Variable_name LIKE ‘collation%‘;
一切搞定。。運行腳本。。。發現正常!!GOD...
頁面數據寫入數據庫編碼問題