2006年11月22日 星期三 20:18
前不久看到版面上有一个下载mp3的程序,挺好用的.看了一下,有一个问题不太懂. 直接搜索之后得到的baidu的页面是用urllib2.urlopen()来下载下来的,然后从里 面提取出来歌曲的链接之后,比如下面这样的链接: http://202.108.23.172/m?ct=134217728&tn;=baidusg,\xc1\xb5\xd7\xc5\xb6\xe0\xcf\xb2\xbb\xb6%20%20\xc9\xf1\xb5\xf1\xcf\xc0\xc2\xc2&word;=mp3,http://www.odwan.com/UploadFiles/Y2JjamZmaHFqZWNmbWdwazE$.mp3,,[%C1%BA%BE%B2%C8%E3+%C1%B5%D7%C5%B6%E0%CF%B2%BB%B6]&lm;=16777216 复制到浏览器的地址栏,就可以打开网页,用wget也可以下载下来,为什么用python 的urllib2.urlopen(url)就不行呢? 谢谢.
2006年11月22日 星期三 23:06
你这url可以使用urlopen的 不过我在做baidu的下载工具,知道有些url不行是因为url中有中文 2006/11/22, fdu.xiaojf在gmail.com <fdu.xiaojf在gmail.com>: > > 前不久看到版面上有一个下载mp3的程序,挺好用的.看了一下,有一个问题不太懂. > > 直接搜索之后得到的baidu的页面是用urllib2.urlopen()来下载下来的,然后从里 > 面提取出来歌曲的链接之后,比如下面这样的链接: > > > http://202.108.23.172/m?ct=134217728&tn;=baidusg,\xc1\xb5\xd7\xc5\xb6\xe0\xcf\xb2\xbb\xb6%20%20\xc9\xf1\xb5\xf1\xcf\xc0\xc2\xc2&word;=mp3,http://www.odwan.com/UploadFiles/Y2JjamZmaHFqZWNmbWdwazE$.mp3,,[%C1%BA%BE%B2%C8%E3+%C1%B5%D7%C5%B6%E0%CF%B2%BB%B6]&lm;=16777216 > > 复制到浏览器的地址栏,就可以打开网页,用wget也可以下载下来,为什么用python > 的urllib2.urlopen(url)就不行呢? > > 谢谢. > > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- 茫茫人海,你是我的最爱 -------------- 下一部分 -------------- 一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20061122/bbb4a182/attachment.htm
2006年11月22日 星期三 23:10
请问我用string的encode方法,这样有什么错误吗? >>> a = '天才狐狸' >>> a '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' >>> a.encode('utf-8') Traceback (most recent call last): File "", line 1, in -toplevel- a.encode('utf-8') UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position 0: ordinal not in range(128) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://python.cn/pipermail/python-chinese/attachments/20061122/3f892a6f/attachment.html
2006年11月22日 星期三 23:22
天才狐狸 wrote: > > 请问我用string的encode方法,这样有什么错误吗? > > >>> a = '天才狐狸' > > >>> a > > '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' > > >>> a.encode('utf-8') > > Traceback (most recent call last): > > File "", line 1, in -toplevel- > > a.encode('utf-8') > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position > 0: ordinal not in range(128) > 你应该先用gbk解码,然后再转换成utf-8 >>> a = '天才狐狸' >>> a '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' >>> a.encode('utf-8') Traceback (most recent call last): File "", line 1, in ? UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position 0: ordinal not in range(128) >>> a.decode('gbk').encode('utf-8') '\xe5\xa4\xa9\xe6\x89\x8d\xe7\x8b\x90\xe7\x8b\xb8' >>>
2006年11月22日 星期三 23:24
>>> s="我" >>> s '\xe6\x88\x91' >>> s.decode("utf-8") u'\u6211' On 11/22/06, 天才狐狸 <mem_fox在263.net> wrote: > > > > > 请问我用string的encode方法,这样有什么错误吗? > > >>> a = '天才狐狸' > > >>> a > > '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' > > >>> a.encode('utf-8') > > > > Traceback (most recent call last): > > File "", line 1, in -toplevel- > > a.encode('utf-8') > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position 0: > ordinal not in range(128) > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > -- Blog: http://qingfeng.ushared.com/blog/ http://qingfeng.vox.com/
2006年11月23日 星期四 08:11
字符串编码分为处理编码和传输编码的。处理编码是一种内部编码,就是unicode,你需要先将字符串转换为内部处理编码,在转换成另外一种传输编码。也就是先转换成unicode,然后在编码。 楼上的说的很有道理: >>>a="天才狐狸" >>>a.decode("gbk").encode("utf-8") 或者 >>> unicode(a,"gbk").encode("utf-8")
2006年11月23日 星期四 08:28
On 11/22/06, 大熊 <bearsprite在gmail.com> wrote: > 你这url可以使用urlopen的 > > 不过我在做baidu的下载工具,知道有些url不行是因为url中有中文 url中的中文应该被转义,否则也不叫url了 > > 2006/11/22, fdu.xiaojf在gmail.com <fdu.xiaojf在gmail.com >: > > 前不久看到版面上有一个下载mp3的程序,挺好用的.看了一下,有一个问题不太懂. > > > > 直接搜索之后得到的baidu的页面是用urllib2.urlopen ()来下载下来的,然后从里 > > 面提取出来歌曲的链接之后,比如下面这样的链接: > > > > > http://202.108.23.172/m?ct=134217728&tn;=baidusg,\xc1\xb5\xd7\xc5\xb6\xe0\xcf\xb2\xbb\xb6%20%20\xc9\xf1\xb5\xf1\xcf\xc0\xc2\xc2&word;=mp3,http://www.odwan.com/UploadFiles/Y2JjamZmaHFqZWNmbWdwazE$.mp3,,[%C1%BA%BE%B2%C8%E3+%C1%B5%D7%C5%B6%E0%CF%B2%BB%B6]&lm;=16777216 > > > > 复制到浏览器的地址栏,就可以打开网页,用wget也可以下载下来,为什么用python > > 的urllib2.urlopen(url)就不行呢? > > > > 谢谢. > > > > > > _______________________________________________ > > python-chinese > > Post: send python-chinese在lists.python.cn > > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > > > > -- > 茫茫人海,你是我的最爱 > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > -- with kind regards
2006年11月23日 星期四 09:03
Please see articles in http://tkdchen.spaces.live.com they may be help u. On 11/22/06, 天才狐狸 <mem_fox at 263.net> wrote: > > > > > 请问我用string的encode方法,这样有什么错误吗? > > >>> a = '天才狐狸' > > >>> a > > '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' > > >>> a.encode('utf-8') > > > > Traceback (most recent call last): > > File "", line 1, in -toplevel- > > a.encode('utf-8') > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position 0: > ordinal not in range(128) > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to > python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request at lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > -- GoogleTalk: qcxhome at gmail.com MSN: qcxhome at hotmail.com My Space: tkdchen.spaces.live.com BOINC: boinc.berkeley.edu 中国分布式计算总站: www.equn.com
2006年11月23日 星期四 10:11
2006/11/22, fdu.xiaojf at gmail.com <fdu.xiaojf at gmail.com>: > > 前不久看到版面上有一个下载mp3的程序,挺好用的.看了一下,有一个问题不太懂. > > 直接搜索之后得到的baidu的页面是用urllib2.urlopen()来下载下来的,然后从里 > 面提取出来歌曲的链接之后,比如下面这样的链接: > > > http://202.108.23.172/m?ct=134217728&tn;=baidusg,\xc1\xb5\xd7\xc5\xb6\xe0\xcf\xb2\xbb\xb6%20%20\xc9\xf1\xb5\xf1\xcf\xc0\xc2\xc2&word;=mp3,http://www.odwan.com/UploadFiles/Y2JjamZmaHFqZWNmbWdwazE$.mp3,,[%C1%BA%BE%B2%C8%E3+%C1%B5%D7%C5%B6%E0%CF%B2%BB%B6]&lm;=16777216 > > 复制到浏览器的地址栏,就可以打开网页,用wget也可以下载下来,为什么用python > 的urllib2.urlopen(url)就不行呢? > > 谢谢. > 因为取出的这个链接里面包含有空格和中文,理论上来讲用quote来编码是没有问题的,但是实际上我在做的时候编码后打不开,于是就进行了相应的处理,把无关紧要的空格和中文给剔除了。 -- I like Python & Linux. Blog: http://recordus.cublog.cn -------------- next part -------------- An HTML attachment was scrubbed... URL: http://python.cn/pipermail/python-chinese/attachments/20061123/9353e8d9/attachment.htm
2006年11月23日 星期四 16:04
¶ÔÓÚÒ»¸ö×Ö·û´®£¬ÎÒÃÇËƺõºÜÄÑÖªµÀËü²ÉÓÃʲô×Ö·û¼¯¡£ >>> a='¶ÔÓÚÒ»¸ö×Ö·û´®' ÕâÈ¡¾öÓÚÄãµÄϵͳ»òpythonʹÓõÄÊÇʲô×Ö·û¼¯£¬ >>> a=u'¶ÔÓÚÒ»¸ö×Ö·û´®' ÏÔʾ¸æËßʹÓÃunicode ÊÇÕâÑù°É£¿ Brightman 2006-11-23 ·¢¼þÈË£º ÂóÌïÊØÍûÕß ·¢ËÍʱ¼ä£º 2006-11-23 09:03:49 ÊÕ¼þÈË£º python-chinese在lists.python.cn ³ËÍ£º Ö÷Ì⣺ Re: [python-chinese]Python±àÂëÎÊÌâ Please see articles in http://tkdchen.spaces.live.com they may be help u. On 11/22/06, Ìì²ÅºüÀê <mem_fox在263.net > wrote: > > > > > ÇëÎÊÎÒÓÃstringµÄencode·½·¨£¬ÕâÑùÓÐʲô´íÎóÂ𣿠> > > > > a = 'Ìì²ÅºüÀê' > > > > > a > > '\xcc\xec\xb2\xc5\xba\xfc\xc0\xea' > > > > > a.encode('utf-8') > > > > Traceback (most recent call last): > > File "", line 1, in -toplevel- > > a.encode('utf-8') > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xcc in position 0: > ordinal not in range(128) > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > -- GoogleTalk: qcxhome在gmail.com MSN: qcxhome在hotmail.com My Space: tkdchen.spaces.live.com BOINC: boinc.berkeley.edu Öйú·Ö²¼Ê½¼ÆËã×ÜÕ¾: www.equn.com _______________________________________________ python-chinese Post: send python-chinese在lists.python.cn Subscribe: send subscribe to python-chinese-request在lists.python.cn Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20061123/de810e65/attachment-0001.html
2006年11月23日 星期四 16:08
use this code: import sys reload(sys) sys.setdefaultencoding('utf-8') _________________________________________________________________ 与世界各地的朋友进行交流,免费下载 Live Messenger; http://get.live.com/messenger/overview
Zeuux © 2025
京ICP备05028076号