0

私はこのコードを持っています

# -*- coding: utf8 -*-
__author__ = 'user'
import gdata.youtube.service
yt_service = gdata.youtube.service.YouTubeService()
query = gdata.youtube.service.YouTubeVideoQuery()
query.vq = u"не"
feed = yt_service.YouTubeQuery(query)

for yt_item in feed.entry:
    print yt_item.GetSwfUrl()

そして、私はこのエラーを受け取っています:

トレースバック(最後の最後の呼び出し):
ファイル "cyr_search.py​​"、7行目、
フィード= yt_service.YouTubeQuery(query)
ファイル "/Users/user/Documents/GrabaHeroku/graba_h_ve/lib/python2.7/site-packages/ gdata / youtube / service.py "、1346行目、YouTubeQuery
result = self.Query(query.ToUri())
File" /Users/user/Documents/GrabaHeroku/graba_h_ve/lib/python2.7/site-packages/gdata /service.py "、行1715、ToUri
return atom.service.BuildUri(q_feed、self)
ファイル" /Users/user/Documents/GrabaHeroku/graba_h_ve/lib/python2.7/site-packages/atom/service.py "、584行目、BuildUriの
parameter_list = DictionaryToParamList(url_params、escape_params)
ファイル"/Users/user/Documents/GrabaHeroku/graba_h_ve/lib/python2.7/site-packages/atom/service.py"、行551、DictionaryToParamList
for param、value in(url_parameters or {})。items() ]
ファイル"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py"、1275行目、quote_plus
return quote(s、safe)
ファイル " /Library/Frameworks/Python.framework/ Versions / 2.7 / lib / python2.7 / urllib.py "、1268行目、引用符で
返す'' .join(map(quoter、s))
KeyError:u'\ u043d'

非ASCIIを検索するにはどうすればよいですか。クエリをURLエンコードする必要がありますか?私は図書館がそれを自力で行うだろうと思った。

4

1 に答える 1

0

Change to:

query.vq = u"не".encode('utf8')

The string needs to be encoded before being sent.

于 2012-11-28T18:39:01.743 に答える