[CPyUG] 求助使用web.py怎么get的时候使用中文作参数

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

[CPyUG] 求助使用web.py怎么get的时候使用中文作参数

刺猬
如题,google了半天。没找到方法。求大家给指点一下。

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

jamiesun
页面上用urlencode一下再传,

2010/5/26 刺猬 <[hidden email]>
如题,google了半天。没找到方法。求大家给指点一下。

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

[CPyUG] Re: 求助使用web.py怎么get的时候使用中文作参数

刺猬
噢啦。我现在是做的手动输入url地址加参数的方式。 加了个
发现传递中文后,页面打开自动为gb2312的方式。 加了个 web.header('Content-Type', 'text/html;
charset=UTF-8') 现在是utf-8的页面了。
On May 26, 4:19 pm, 杰米 <[hidden email]> wrote:

> 页面上用urlencode一下再传,
>
> 2010/5/26 刺猬 <[hidden email]>
>
>
>
> > 如题,google了半天。没找到方法。求大家给指点一下。
>
> > --
> > 来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
> > 退订:http://tinyurl.com/45a9tb//针对163/qq邮箱:http://tinyurl.com/4dg6hc
> > 详情:https://groups.google.com/group/python-cn
> > 严正: 理解列表! 智慧提问!http://wiki.woodpecker.org.cn/moin/AskForHelp

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Ken-145
In reply to this post by 刺猬
2010/5/26 刺猬 <[hidden email]>
如题,google了半天。没找到方法。求大家给指点一下。

不推荐。

--
百才招聘(baicai.com).产品部
Email: [hidden email]
Gtalk: [hidden email]
twitter.com/qichangxing
http://blog.hi0791.com

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

yrh-2
In reply to this post by 刺猬
http://url?x=中文&y=中文2

的方式传入中文,自动会转换编码

在 2010年5月26日 下午4:08,刺猬 <[hidden email]>写道:
如题,google了半天。没找到方法。求大家给指点一下。

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Ken-145
2010/5/28 yrh <[hidden email]>
http://url?x=中文&y=中文2

的方式传入中文,自动会转换编码


他指参数,不是指值:
http://abc.com/?参数1=haha

--
百才招聘(baicai.com).产品部
Email: [hidden email]
Gtalk: [hidden email]
twitter.com/qichangxing
http://blog.hi0791.com

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Ben Bear-2
In reply to this post by yrh-2
分两步:第一步是,URL 是如何 encode 的,也就是如何 %xx 化的。具体就是“中文”是如何编码的,GBK 还是 UTF-8?正常来说应该是 UTF-8。检查一下是 POST 实际请求的参数,是 x=%D6%D0%CE%C4&y=%D6%D0%CE%C42 还是 x=%E4%B8%AD%E6%96%87&y=%E4%B8%AD%E6%96%872,后者是 UTF-8 编码的。
第二步,查看 web.py 接收到的请求地址是什么。乱码的话,是什么乱码。

# coding=gbk
import urllib
print urllib.urlencode({'y':'中文2','x':'中文'})
print urllib.urlencode({'y':u'中文2'.encode('utf-8'),'x':u'中文'.encode('utf-8')})


在 2010年5月28日 下午12:32,yrh <[hidden email]>写道:
http://url?x=中文&y=中文2

的方式传入中文,自动会转换编码

在 2010年5月26日 下午4:08,刺猬 <[hidden email]>写道:
如题,google了半天。没找到方法。求大家给指点一下。

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Jiahua Huang
In reply to this post by 刺猬


2010/5/26 刺猬 <[hidden email]>
如题,google了半天。没找到方法。求大家给指点一下。


 #!/usr/bin/python
# -*- coding: UTF-8 -*-

import web

urls = ("/zh/(.*)", "zh")
app = web.application(urls, globals())

class zh:
    def GET(self, args):
        kwds = {}
        for k, v in [ i.split('=') for i in args.split('&') ]:
            kwds[k] = v
            pass
        ## 现在中文参数都在 字典 kwds 里边
        return '%s\n' % kwds

if __name__ == "__main__":
    app.run()

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Jiahua Huang
http://0.0.0.0:8080/zh/中文=例子&汉字=中文&参数=值

得到就是
{u'\u4e2d\u6587': u'\u4f8b\u5b50', u'\u53c2\u6570': u'\u503c', u'\u6c49\u5b57': u'\u4e2d\u6587'}
{u'中文': u'例子', 
 u'参数': u'值', 
 u'汉字': u'中文'}


--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Jiahua Huang
附上能直接显示中文的 pprint

>>> import pprint
>>> kwds = {u'\u4e2d\u6587': u'\u4f8b\u5b50', u'\u53c2\u6570': u'\u503c', u'\u6c49\u5b57': u'\u4e2d\u6587'}
>>> pprint.pprint(kwds)
{u'中文': u'例子', u'参数': u'值', u'汉字': u'中文'}
>>> 

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp

pprint.py (16K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Menghan Zheng-2
py3.1中的pprint支持直接显示中文

你的pprint好像是在2.6的pprint上改的,我试了下,无法在2.5中使用

sky@deb-flash:~/Downloads$ python
Python 2.5.5 (r255:77872, Apr 21 2010, 08:44:16)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pprint
>>> pprint.__file__
'pprint.pyc'
>>> pprint('中')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
>>>
sky@deb-flash:~/Downloads$


2010/5/30 Jiahua Huang <[hidden email]>:

> 附上能直接显示中文的 pprint
>>>> import pprint
>>>> kwds = {u'\u4e2d\u6587': u'\u4f8b\u5b50', u'\u53c2\u6570': u'\u503c',
>>>> u'\u6c49\u5b57': u'\u4e2d\u6587'}
>>>> pprint.pprint(kwds)
> {u'中文': u'例子', u'参数': u'值', u'汉字': u'中文'}
>>>>
>
> --
> 来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
> 退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
> 详情: https://groups.google.com/group/python-cn
> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] 求助使用web.py怎么get的时候使用中文作参数

Menghan Zheng-2
啊呀晕鸟,收回这封邮件

2010/5/30 Menghan Zheng <[hidden email]>:
> py3.1中的pprint支持直接显示中文
>

啊呀刚才晕鸟,收回以下这段话

> 你的pprint好像是在2.6的pprint上改的,我试了下,无法在2.5中使用
>
> sky@deb-flash:~/Downloads$ python
> Python 2.5.5 (r255:77872, Apr 21 2010, 08:44:16)
> [GCC 4.4.3] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>>>> import pprint
>>>> pprint.__file__
> 'pprint.pyc'
>>>> pprint('中')
> Traceback (most recent call last):
>  File "<stdin>", line 1, in <module>
> TypeError: 'module' object is not callable
>>>>
> sky@deb-flash:~/Downloads$
>
>
> 2010/5/30 Jiahua Huang <[hidden email]>:
>> 附上能直接显示中文的 pprint
>>>>> import pprint
>>>>> kwds = {u'\u4e2d\u6587': u'\u4f8b\u5b50', u'\u53c2\u6570': u'\u503c',
>>>>> u'\u6c49\u5b57': u'\u4e2d\u6587'}
>>>>> pprint.pprint(kwds)
>> {u'中文': u'例子', u'参数': u'值', u'汉字': u'中文'}
>>>>>
>>
>> --
>> 来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
>> 退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
>> 详情: https://groups.google.com/group/python-cn
>> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>>
>

--
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb //针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp