小编kir*_*pit的帖子

如何在Python中找到任何包的"import name"?

我想知道是否有任何可靠和一致的方法来获取Python包的"import name"/ namespace.例如;

包装 ; django-haystack
进口名称 ; 草垛

要么

包装 ; ipython
导入名称 ; IPython的

到目前为止我知道,PyPi没有存储我用PyPiXmlRpc检查过的信息.

我还尝试自动下载软件包,解压缩并挖掘.egg-info,但有些软件包根本没有该文件夹.

任何帮助将不胜感激,并将用于一个良好的方式小工具:)

python namespaces pypi cheeseshop

13
推荐指数
3
解决办法
2650
查看次数

语言不可知的cookie编码/解码标准

无论后端平台如何,我都难以弄清楚编码/解码cookie值的标准是什么(或者有什么?).

根据RFC 2109:

VALUE对用户代理是不透明的,可以是源服务器选择发送的任何内容,可能是服务器选择的可打印ASCII编码."不透明"意味着内容仅对原始服务器感兴趣并且相关.实际上,任何检查Set-Cookie标头的人都可以读取内容.

这听起来像"服务器是老板",它决定编码将适用的任何内容.这使得设置cookie非常困难,例如PHP后端并从Python或Java或其他任何方式读取它,而无需在两侧编写任何手动编码/解码处理.

假设我们需要对值进行编码.俄语的/"??????? (*} ????????"/意思是"cookie值",其中包含一些额外的非字母数字字符.

蟒蛇:

几乎每个WSGI服务器都使用相同的Python并使用Python的SimpleCookie类来编码/解码八进制文字,即使很多人说八进制文字在ECMA-262严格模式下折旧.跆拳道?

因此,我们的原始cookie值变为 "/\"\320\277\320\265\321\207\320\265\320\275\321\214\320\265 (*} \320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\"/"

Node.js的:

没有测试过,但我只是猜测一个JavaScript后端会使用原生encodeURIComponentdecodeURIComponent函数来使用十六进制转义/ unescaping吗?

PHP:

PHP将urlencode应用于与encodeURIComponent类似但不完全相同的cookie值.

所以原始价值变成了; %2F%22%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D1%8C%D0%B5+%28%2A%7D+%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%22%2F甚至没有用双引号括起来.

然而; 如果JavaScript value变量具有上面的PHP编码值,则decodeURIComponent(value)给出/"???????+(*}+????????"/,请参阅"+"字符而不是空格.

Java,Ruby,Perl和.NET的情况如何?哪种语言跟随(或最接近)所需行为.实际上,W3是否有任何标准?

language-agnostic cookies encoding web-standards decoding

8
推荐指数
1
解决办法
898
查看次数