Re: [問題] 關於py讀資料夾問題
※ 引述《tpqf (tpqf)》之銘言:
: 不好意思能否再請問一下
: 有沒有辦法可以使.py支援中文big5
: 或是Unicode
: 我是使用
: http://www.schiller.cc/blog/programming/uploadr2setpy/
: 的程式
: 只要我資料夾裡面有中文就錯亂了
: 有查過網路
: 蠻多什麼中文解決法
: 像是把str() 改成 big5str()
: 但是都會運作失敗
: 有沒有什麼辦法解決
: 真是拜託了 >.<
先說,我沒有 Flickr 帳號也沒有中文檔名,所以沒得測試,以下全部是嘴砲 XD
==
下面是我覺得應該要改的地方
不知道你用的編輯器是什麼…能把 .py 存成 UTF-8 編碼是最好
記事本另存新檔的時候可以選 UTF-8, 或是用這個棒到不行的免費 EmEditor
(這邊推薦 Vim 大概會被砍頭吧 XD 扯遠了)
首先在檔頭第一行加上
# coding: utf-8
(或是 # coding: big5 看你用哪種編碼儲存而定
==
然後把 IMAGE_DIR 改成 u"d:/temp/我的照片" 這種 string (開頭有 u 的)
讓 Python 用 unicode 處理目錄名稱跟檔名
開頭指定 tags 的地方依樣畫葫蘆
FLICKR = {"title": "", # 疑似沒用到?
"description": "", # 疑似沒用到?
"tags": u"標籤 測試",
==
修改 def uploadImage( self, image, set ):
- photo = ('photo', image, open(image,'rb').read())
+ photo = ('photo', image.encode('utf-8'), open(image,'rb').read())
- "tags" : str( FLICKR["tags"] ), # 我很想知道他原本在想什麼 XD
+ "tags" : FLICKR["tags"].encode('utf-8')
修改 def createSet( self, title, photo_id ):
- api.title : str(title),
+ api.title : title.encode('utf-8'),
==
先這樣改看看能不能動吧…
不知道 photoset_id 跟 photo_id 需不需要改成 unicode aware
我猜應該不用才對
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.63.79
※ 編輯: Tiberius 來自: 59.126.63.79 (11/18 16:15)
→
11/18 16:15, , 1F
11/18 16:15, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 6 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章