我正在使用Selenium WebDriver for Python.我想要实例化具有特定宽度和高度的浏览器.到目前为止,我能得到的最接近的是:
driver = webdriver.Firefox()
driver.set_window_size(1080,800)
Run Code Online (Sandbox Code Playgroud)
哪个有效,但在创建后设置浏览器大小,我希望它在实例化时设置.我猜测有一种方法:
profile = webdriver.FirefoxProfile();
profile.set_preference(foo, 1080)
driver = webdriver.Firefox(profile)
Run Code Online (Sandbox Code Playgroud)
但我不知道foo会是什么,我无法弄清楚文档的位置.
Q1:有没有办法在实例化时设置宽度/高度?
Q2:列出可用的所有密钥的参考文档在哪里profile.set_preference?
我有一个看起来像这样的查询:
query = (models.Foo.all()
.filter('x =', x)
.filter('y =', y)
.filter('z =', z)
.filter('zz =', zz)
.order('-a'))
Run Code Online (Sandbox Code Playgroud)
它在~100ms内在本地SDK上运行,并以可接受的速度在云中运行.当我添加第二个订单(所以看起来像这样:)
query = (models.Foo.all()
.filter('x =', x)
.filter('y =', y)
.filter('z =', z)
.filter('zz =', zz)
.order('-a')
.order('-b'))
Run Code Online (Sandbox Code Playgroud)
..在本地SDK上需要大约10秒(长100倍),并且在云中以与之前相同的速度运行.我需要有二阶属性.
有关设置的一些细节:
db模型,而不是ndbsqlite3 datastore.db "PRAGMA integrity_check了本地数据库,没有报告任何错误问题:如何在本地更快地运行查询?(在整个时间里,10s滞后的开发真的很困难.)
该文件说,
updateOn:指定输入绑定到哪个事件的字符串.您可以使用空格分隔列表设置多个事件.有一个名为default的特殊事件与属于控件的默认事件匹配.
该页面中提到的几个事件:blur,default,submit.还有其他人吗?完整列表是否记录在何处?
我们正在将应用程序从python 2.5迁移到python 2.7.
最新的SDK(1.8.3)不支持python 2.5.
什么是最新版本的SDK支持python 2.5?如果你有,请链接到源.
我Exceeded soft private memory limit在app引擎中的各种请求处理程序中偶尔会遇到错误.我知道这个错误意味着实例使用的RAM超过了分配的数量,以及它如何导致实例关闭.
我想了解可能导致错误的原因,并且首先,我想了解app引擎python实例应该如何管理内存.我的基本假设是:
这就是我认为这是可行的,但考虑到我偶尔会穿过一个相当看到此错误广集请求处理的,现在我不那么肯定.我的问题是:
a)第4步会发生吗?
b)什么可能导致它不发生?还是不完全发生?例如,请求之间的内存如何泄漏?
c)模块级变量中的存储是否会导致内存使用泄漏?(我不是故意以这种方式使用模块级变量)
d)我可以使用哪些工具/技术来获取更多数据?例如,在请求处理程序的入口处测量内存使
在答案/评论中,如果可能,请链接到gae文档.
[编辑]额外信息:我的应用程序被统一为threadsafe: false.如果这与答案有关,请说明它是什么.我计划threadsafe: true很快改变.
[编辑] 澄清:这个问题是关于gae对内存管理的预期行为.因此,虽然像"呼叫gc.collect()" 这样的建议可能是相关问题的部分解决方案,但它们并没有完全回答这个问题.直到我理解gae预计会如何表现为止,使用gc.collect()对我来说就像伏都教编程一样.
最后:如果我把这一切都倒退了然后我提前道歉 - 我真的找不到有用的信息,所以我大多猜测..
如果首先更改范围属性,然后再广播事件,那么相应的观察者回调和事件监听器回调是否始终以相同的顺序执行?例如:
$scope.foo = 3;
$scope.$broadcast('bar');
Run Code Online (Sandbox Code Playgroud)
和其他地方:
$scope.$watch('foo', function fn1(){...});
$scope.$on('bar', function fn2(){...});
Run Code Online (Sandbox Code Playgroud)
将fn1永远执行fn2,反之亦然,或者订单不能依赖?请引用消息来源,最好是官方角度文档.
如果它很重要:让我们假设$ scope.foo =并且$ broadcast出现在由ng-click调用的函数中(即用户交互)
[旁白]抱歉问题标题很草率 - 如果你有更好的东西请重命名.
在请求HTTPS资源时,appengine的urllib是否使用SSLv3?使用TLS?(python 2.7)
对于上下文,AWS S3最近宣布了这一点
截至2015年4月30日太平洋时间12月30日,AWS将停止支持SSLv3以确保与S3存储桶的连接.
然后
[我们的一些存储桶]目前正在接受来自指定SSLv3以连接到S3 HTTPS端点的客户端的请求.
然后
AWS禁用对Amazon S3服务的SSLv3支持后,这些请求将失败.为避免中断访问,您必须更新任何客户端软件(或通知任何客户端更新软件),使使用SSLv3的请求连接到S3 HTTPS端点.
他们不提供有关哪些客户端正在使用SSLv3的任何用户代理信息.所以我想到,由于我们使用boto 2.9.9(使用urllib)从GAE连接到S3,我们的GAE到S3连接可能是SSLv3违规者,现在我想检查是否是这种情况.
如果我在这里误解了一些概念,我会提前道歉.例如,TLS或SSLv3的使用(或不使用)可能由python版本或boto配置或其他内容决定.如果是这样,请纠正我,并编辑我的问题:)
哦,感谢AWS在没有任何用户代理信息或其他方式的情况下放弃我们,以确定4月30日究竟要破坏的内容;)
我正在使用GAE的' deffered '库(python),它会在发生异常时自动重试任务.
有没有办法知道(在任务处理函数内)任务被尝试的次数?
我的最终目标是实现以下内容:
if num_tries >5:
email_admins()
raise deferred.PermanentTaskFailure
Run Code Online (Sandbox Code Playgroud)
最初我以为我可以使用'TaskRetryOptions'来限制尝试次数,但我相信这并没有提供我的email_admins()调用的机制.或者是吗?
[编辑]当然我可以读取/写入DB或memcache的尝试次数,但我宁愿避免这种复杂性.如果可能的话,我更愿意从任务/任务队列中获取详细信息.