小编tom*_*yes的帖子

RegEx可以与Meteor"check"包一起使用吗?

我对Meteor相对较新(非常喜欢它 - 谢谢!框架作者).

我的问题是关于check包:有没有办法用RegEx模式调用check来验证输入?我在我提供的链接上阅读了包的所有文档; 多次提到"模式"这个词,但是(afaik)并不是指正则表达式.

我希望我遗漏了一些东西,并且有人能够指出我实现check()使用正则表达式验证字符串的调用的方法.

regex meteor meteor-helper

5
推荐指数
1
解决办法
1248
查看次数

iPython/Jupyter Notebook:如何使用 Desmos API 嵌入交互式图形?

我最近从使用纸笔系统为我的微积分 II 课程做笔记切换到使用 Jupyter(以前称为 iPython)笔记本。有什么不同!

无论如何,作为一个通过视觉演示学习得最好的人,我真的很想在我的笔记本中嵌入一​​些交互式Desmos图(对于不熟悉 Desmos 的人来说,它是一个非常强大但易于使用的基于网络的图形计算器)。

不幸的是,iPython/Jupyter notebook安全 模型阻止了嵌入在 Markdown 单元格中的 JavaScript 的执行。HTML Sanitization 库(我相信是Google Caja)去除您放入 Markdown 单元格中的任何 HTML 标签和 JavaScript 代码。

根据安全模型文档中注释,计划支持某种允许 HTML/CSS 用于笔记本主题的机制。但该说明并未提及 JavaScript 支持。

我意识到跨站脚本是一个严重且难以防御的问题,但真的没有办法放松笔记本作者的安全限制吗?也许将来可以向笔记本元数据(可以在笔记本会话中编辑)添加配置选项以指定允许的标签列表。

同时,有没有人知道使用 JavaScript 在笔记本的 Markdown 单元格中嵌入来自第三方 API 的输出的变通方法、黑客或其他方法?

如果要在 Python 单元格中使用 Python 打印适当的 HTML 和 JavaScript 代码,是否可以避免这些限制?也许我应该为 Desmos API 编写一个 Python 包装器......

javascript python ipython ipython-notebook jupyter

5
推荐指数
1
解决办法
4807
查看次数

Python请求模块和JSON响应

我使用了很棒的 Requests模块来测试我为我们的一个内部项目创建的API.我相信我已经发现了Requests模块本身的缺陷,或者我使用它的缺陷.

由于我们的数据不是超敏感的,因此我们的API使用简单的基本HTTP身份验证来控制访问.当我做了API URL的请求,使用JSON作为数据格式,要么用的urllib2或HTTPBasicAuthHandler PHP和卷曲,我得到我的数据备份的格式正确的JSON字符串 - 没问题.

但是,当我使用Requests模块发出相同的请求时,我得到一个编码的字符串,我无法确定它是什么类型的编码.这是该字符串开头的片段:

\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03\xadZ\xfb\x8f\xd3H\x12\xfeWzG\xab;\x90
Run Code Online (Sandbox Code Playgroud)

以下是我使用请求重现此问题的几行代码:

import requests
# api_user and api_pw not printed here for security reasons
r = requests.get('http://ourdomain.com/api/featured/school/json', auth=(api_user, api_pw))
status = r.status_code # Produces 200 every time
rawdata = r.read()
print rawdata
Run Code Online (Sandbox Code Playgroud)

每次我这样做,我都会得到编码的字符串.

任何人都可以帮我确定:a)什么编码(对于我自己的启发),和b)为什么请求返回该编码中的数据,以及如何解码和/或"修复"它.

提前致谢!

python json http-request python-requests

4
推荐指数
1
解决办法
4583
查看次数

在 Sympy.mpmath.plot 中更改图形大小

我希望这个问题不是太初级。我已经广泛搜索了解决方案,但还没有发现。

我最近开始使用 Jupyter Notebook 和 Sympy 在我的微积分 II 课上做笔记和做作业(这真是一个巨大的好处!)。

但是,我唯一的问题是我无法弄清楚如何配置绘图的大小(即以像素为单位的尺寸)。

matplotlib直接使用(matplotlib.pyplot.figure()特别是)很容易,但我使用该Sympy.mpmath.plot模块是因为Sympy对于我们在本课程中进行的符号操作来说效果更好。我知道Sympy有它自己的绘图模块,但mpmath到目前为止似乎更容易使用(当然,这个问题除外)。

但是,我已经查看了mpmath文档并反复搜索了该问题,但没有解决方案。

如何更改使用mpmathAPI绘制函数所产生的图像大小?

python plot matplotlib sympy mpmath

4
推荐指数
1
解决办法
1840
查看次数

为什么Python会在非迭代类型的操作中给我一个"TypeError:类型'UserAgent'的参数不可迭代"?

我有一个BaseHandler类,它在我的AppEngine站点中继承了Tipfy RequestHandler.在其中,我为移动设备设置了一个"穷人"浏览器嗅探器,其中包含一个包含设备名称的类属性(元组).

在后续方法中,我遍历元组中的设备名称,并根据Request对象中的用户代理字符串检查它们.如果我得到匹配,我将名为"is_mobile"的实例属性设置为True.

但是,在那个方法中,Python给了我一个"TypeError:类型'UserAgent'的参数不可迭代"错误,我无法理解为什么,因为它所抱怨的行不是(据我所知)一个循环.

这是代码:

class BaseHandler(RequestHandler, AppEngineAuthMixin, AllSessionMixins):

    mobile_devices = ('Android', 'iPhone', 'iPod', 'Blackberry')

    ....

    def detect_mobile_devices(self):
        found_device = False

        for device in self.__class__.mobile_devices:
            if device in self.request.user_agent:
                found_device = True
                break

        self.is_mobile = found_device
Run Code Online (Sandbox Code Playgroud)

这是Python不喜欢的行:

File "/path/to/project/app/apps/remember_things/handlers.py", line 56, in detect_mobile_devices
if device in self.request.user_agent:
Run Code Online (Sandbox Code Playgroud)

python google-app-engine tipfy

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