V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  wozhapen  ›  全部回复第 1 页 / 共 3 页
回复总数  52
1  2  3  
2019-02-04 23:41:02 +08:00
回复了 zhuzhezhe 创建的主题 2019 我还活着,各位新年快乐
新年快乐,早日康复~
2017-04-17 22:04:36 +08:00
回复了 coolicer 创建的主题 互联网 还是要回来募捐,麻烦大家了
一点心意 祝早日康复
似乎明白了。。id: zhapen
@Elethom 哥,不好意思多写了个空格,我设的id是我名字wozhapen,还是说它有生成其他id吗,第一次玩telegram。。
@Elethom 离我好近
Telegram ID: wo zhapen
thk
2015-03-20 00:36:23 +08:00
回复了 salemilk 创建的主题 问与答 wp 如何找到是哪个插件调用的 google 脚本啊?
不知道你能不能直接管理w p源码,如果可以的话就去查找整个项目的“google”关键字,应该能定位出来吧。。
毕设被拉到导师接到外包项目,然后因为我代码写的烂寒假回家后就不让我提交代码了。。现在在公司实习没整这事,打算在答辩前2礼拜回去做做外文翻译写写论文,应该不会挂吧。。
2015-03-15 00:32:56 +08:00
回复了 msxcms 创建的主题 天黑以后 20150315 午夜俱乐部
今天钥匙落房间里了,找开锁的1分钟不到60块。。好心疼啊。。
2015-02-27 11:19:24 +08:00
回复了 neoxen 创建的主题 分享创造 点亮你的技能树 http://skill.phodal.com/
@jas0ndyq 你说的是这个 [寻ta驿站](http://www.xuntayizhan.com) 。。
2015-02-26 22:26:07 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@a2z 谢谢,仔细的读了那篇文章,通篇得出python的一个使用好习惯来避免编码问题,就是 @Sylv 总结的第2个解决方法
> make your code into a Unicode-only clean room
> put ‘airlocks’ at the entry points to your code which will ensure that any byte sequence attempting to enter your code is properly clothed in a protective Unicode bunny suit before being allowed inside.
> 将输入的 bytes 马上解码成 unicode,而在程序内部中均使用 unicode,而当在进行输出的时候,尽早将之编码成 bytes

@aaaa007cn 大牛厉害啊!! 我确实该花些时间来对着文档阅读一下requests的源码。

谢谢你们!!还未入门的小白碰上你们这群大牛真幸运!!送出感谢!!
2015-02-25 22:47:30 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@mhycy
@aaaa007cn
是的,chardet的检测确实有问题,但又好像是requests的问题,我
print response.encoding 得到是 ‘ISO-8859-1’(好像真像9楼Sylv说的那样)
而用 chardet.detect(response.text) 得到是 ‘utf-8’
但看了源码requests 确实是用 chardet 来检测得到encoding的值,按理说应该是一样的值不。

真心谢谢 @aaaa007cn 的提醒,让我看了下源码,又get了些知识。

***

@Sylv 谢谢你的总结,分析好透彻,读了两遍,已打印下来再读,大牛啊!!方法2是个好习惯,像我这样的入门小白应该培养。


@a2z 不好意思,因为时间问题,你的资料我明天再读,有想法再请教。。
2015-02-24 21:33:02 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@aaaa007cn 你好,我不知道如何弄你说的那个 decode 拿到原始 unicode 字符串,所以没试,而对于你所说的接二进制写入文本文件我之前试过,
```
f = open('./html','wb')
f.write(response.text)
f.close()
```
还是需要设置sys.setdefaultencoding('utf8'),不然会出现
```
UnicodeEncodeError: 'ascii' codec can't encode characters in position 131-148: ordinal not in range(128)
```

@mhycy 我试了那个chardet,确实很强大,还给出了置信度,谢谢你,算是又多了一个工具。

{'confidence': 0.99, 'encoding': 'utf-8'}


@zeroday 我试了,貌似不行。
```
t = unicode(response.text, 'utf-8')
print t.encode('utf-8')
```
出现 TypeError: decoding Unicode is not supported

***

好了,这个帖子应该可以结了。后来者翻到的话,可以参考1、5、9楼。谢谢大家!!
2015-02-23 21:57:49 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@mhycy 好的,谢谢推荐,先收藏了,明天来试。
2015-02-23 21:50:46 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@mhycy 是的,返回的头部里'content-type': 'text/plain',未有编码信息。
昨天谷歌的时候有看到chardet,倒是没试过用它来检测。这次掉坑算是长了心眼。。
2015-02-23 21:34:32 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@mhycy 哈哈,谢谢你的建议,这也是我喜欢的方式。。
这次遇坑主要是微信返回的源数据没有编码说明,导致我不知如何解码,经过9楼的回答算是明白原因。
谢谢你的回答。。
2015-02-23 20:31:53 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@mhycy 谢谢指导,我昨天试过保存在文本中也是乱码。

我试过把如下unicode编码的字节码
```
u'36\xe6\xb0\xaa(36Kr.com)\xe6\x98\xaf\xe4\xb8\xad\xe5\x9b\xbd\xe9\xa2\x86\xe5\x85\x88\xe7\x9a\x84\xe7\xa7\x91\xe6\x8a\x80\xe6\x96\xb0\xe5\xaa\x92\xe4\xbd\x93\xef\xbc\x8c\xe6\x88\x91\xe4\xbb\xac\xe6\x8a\xa5\xe9\x81\x93\xe6\x9c\x80\xe6\x96\xb0\xe7\x9a\x84\xe4\xba\x92\xe8\x81\x94\xe7\xbd\x91\xe7\xa7\x91\xe6\x8a\x80\xe6\x96\xb0\xe9\x97\xbb\xe4\xbb\xa5\xe5\x8f\x8a\xe6\x9c\x80\xe6\x9c\x89\xe6\xbd\x9c\xe5\x8a\x9b\xe7\x9a\x84\xe4\xba\x92\xe8\x81\x94\xe7\xbd\x91\xe5\x88\x9b\xe4\xb8\x9a\xe4\xbc\x81\xe4\xb8\x9a\xe3\x80\x82'
```
转成utf-8得到如下不想要的结果(貌似是简单的把单字节加上‘\xc2’变成双字节)
```
'36\xc3\xa6\xc2\xb0\xc2\xaa(36Kr.com)\xc3\xa6\xc2\x98\xc2\xaf\xc3\xa4\xc2\xb8\xc2\xad\xc3\xa5\xc2\x9b\xc2\xbd\xc3\xa9\xc2\xa2\xc2\x86\xc3\xa5\xc2\x85\xc2\x88\xc3\xa7\xc2\x9a\xc2\x84\xc3\xa7\xc2\xa7\xc2\x91\xc3\xa6\xc2\x8a\xc2\x80\xc3\xa6\xc2\x96\xc2\xb0\xc3\xa5\xc2\xaa\xc2\x92\xc3\xa4\xc2\xbd\xc2\x93\xc3\xaf\xc2\xbc\xc2\x8c\xc3\xa6\xc2\x88\xc2\x91\xc3\xa4\xc2\xbb\xc2\xac\xc3\xa6\xc2\x8a\xc2\xa5\xc3\xa9\xc2\x81\xc2\x93\xc3\xa6\xc2\x9c\xc2\x80\xc3\xa6\xc2\x96\xc2\xb0\xc3\xa7\xc2\x9a\xc2\x84\xc3\xa4\xc2\xba\xc2\x92\xc3\xa8\xc2\x81\xc2\x94\xc3\xa7\xc2\xbd\xc2\x91\xc3\xa7\xc2\xa7\xc2\x91\xc3\xa6\xc2\x8a\xc2\x80\xc3\xa6\xc2\x96\xc2\xb0\xc3\xa9\xc2\x97\xc2\xbb\xc3\xa4\xc2\xbb\xc2\xa5\xc3\xa5\xc2\x8f\xc2\x8a\xc3\xa6\xc2\x9c\xc2\x80\xc3\xa6\xc2\x9c\xc2\x89\xc3\xa6\xc2\xbd\xc2\x9c\xc3\xa5\xc2\x8a\xc2\x9b\xc3\xa7\xc2\x9a\xc2\x84\xc3\xa4\xc2\xba\xc2\x92\xc3\xa8\xc2\x81\xc2\x94\xc3\xa7\xc2\xbd\xc2\x91\xc3\xa5\xc2\x88\xc2\x9b\xc3\xa4\xc2\xb8\xc2\x9a\xc3\xa4\xc2\xbc\xc2\x81\xc3\xa4\xc2\xb8\xc2\x9a\xc3\xa3\xc2\x80\xc2\x82'
```
********
当然,对于与已知字符串比较的话,实际上可以构造出已知字符串的unicode编码的字节码,然后进行比较,其实我想知道的是更人性化的比较方式。
谢谢你的回答。
2015-02-23 13:52:39 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@billlee 恩恩,你的解决方式跟一楼类似。
碰到这个问题,我第一时间就是看头部,我在描述里也贴出了是'content-type': 'text/plain',编码未知,然后我就不知道该怎么处理了。。
2015-02-23 13:42:15 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@a2z 你的解释可能是对的,但是我有试过打印的时候encode('utf-8'),不行的。。
2015-02-23 13:37:18 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@Sylv 谢谢。
2015-02-23 12:39:41 +08:00
回复了 wozhapen 创建的主题 Python python 该如何处理 json 中的中文
@funagi 太棒了!!可行。。
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   973 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 25ms · UTC 19:22 · PVG 03:22 · LAX 11:22 · JFK 14:22
Developed with CodeLauncher
♥ Do have faith in what you're doing.