[問題] Python Selenium抓國旅卡網站資訊亂碼

看板Python作者 (三秒槍)時間6年前 (2019/01/27 17:44), 編輯推噓2(2010)
留言12則, 5人參與, 6年前最新討論串1/1
有關Selenium抓取網頁資料變亂碼問題請教: 最近想寫一個抓取國旅卡所有店家資料 從官方網站http://travel.nccc.com.tw用Selenium及BS4抓取頁面資料 一開始先在Windows下編寫測試,可以正常抓取到資料顯示也正常 就把程式丟到Linux的機器執行 跑出來店家資料print出來卻顯示亂碼 程式執行畫面如下: windows下執行顯示正常 https://i.imgur.com/oMu41oF.jpg
Linux下執行print變亂碼 https://imgur.com/kqiFtDR.jpg
看起來像是編碼問題(utf8 big5?) 查看Google後 試著用加上encode=big5 及encode=utf8 結果顯示的結果還是一樣亂碼無法正常秀出中文內容 嘗試用BS4把頁面整個抓取下來後寫到檔案 結果檔案內容: 前面網頁訊息中文正常, 後面店家資訊就顯示亂碼 畫面如下: 前面網頁訊息: https://imgur.com/c3ruZC5.jpg
後面店家資訊: https://i.imgur.com/IkP8GuW.jpg
想請教是否有版友遇過類似問題,想請教應如何解決此類問題 感謝指點~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.213.204.25 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1548582294.A.347.html

01/27 19:02, 6年前 , 1F
看了一下,店名用全形是哪招,低能政府
01/27 19:02, 1F

01/27 19:05, 6年前 , 2F
我沒改編碼但正確抓取並存檔。Windows環境。
01/27 19:05, 2F

01/27 19:27, 6年前 , 3F
Linux靠其他人測試
01/27 19:27, 3F

01/27 20:07, 6年前 , 4F
我Windows環境下能正確抓取沒問題 但LINUX下就變亂碼
01/27 20:07, 4F

01/27 20:28, 6年前 , 5F
應該是console編碼的問題,其實Windows也有。
01/27 20:28, 5F

01/27 20:56, 6年前 , 6F
我在Linux底下直接寫入file 也是顯示出亂碼(如畫面)
01/27 20:56, 6F

01/27 23:11, 6年前 , 7F
encode decode 的老問題
01/27 23:11, 7F

01/27 23:13, 6年前 , 8F
wait 你後面 "變亂碼" 根本不是亂碼
01/27 23:13, 8F

01/27 23:14, 6年前 , 9F
看起來是沒抓到你要文本吧 option value.... 這不是亂碼.
01/27 23:14, 9F

01/27 23:15, 6年前 , 10F
還是有程式碼給別人 debug 比較快
01/27 23:15, 10F

01/29 17:15, 6年前 , 11F
感謝樓上幾位版友建議 後來找出解決方式
01/29 17:15, 11F

01/29 17:16, 6年前 , 12F
直接在file open加上encoding="utf-8" 即可顯示中文
01/29 17:16, 12F
文章代碼(AID): #1SJNsMD7 (Python)
文章代碼(AID): #1SJNsMD7 (Python)