我已经阅读了多篇帖子和许多文章,详细说明了cron作业中的scipts需要保持在脚本本身内部运行所必需的环境变量,因为在cron中打开了shell.我的情况是独特的,因为我的路径变量都是按照讨论的方式设置的,这反过来会使用subprocess.call ()成功调用pysaunter python egg ,但它似乎从那里分解.这导致整个过程在cron作业中中断.
为清楚起见,以下是我所指的步骤:
1) cronjob calls run_test.py -n foo
2) run_test.py sets the environment variables correctly
(cur_shell_path=sys.path (converted to proper path string, not shown here)
my_env= os.environ.copy()
my_env["PATH"] = my_env["PATH"] + cur_shell_path)
3) run_test.py calls subprocess.call("pysaunter -m foo -v", env=my_env, shell=True)
Run Code Online (Sandbox Code Playgroud)
步骤3的输出显示它正在找到egg并成功开始从pysaunter加载必要的模块,但是当它试图找到用于修改pysaunter的目录时它会中断.错误如下:
ImportError: no module named helpers
Run Code Online (Sandbox Code Playgroud)
我曾多次尝试将此路径添加到环境中,但它似乎永远不会找到包含helpers.py的目录.pysaunter -m foo -v从交互式shell调用时,该命令正常工作.
我在pysaunter上找不到多少帮助,所以我认为这里过多的pysaunter细节是不必要的.如果您了解更多有关pysaunter的信息,请告知我们您是否需要更多信息.我不知道该分享什么.
我还阅读了很多帖子,讨论了通过编辑.profile/.bash_profile来改变shell默认行为的能力.我试图找到一个可以使我的路径变量全局可访问的地方,但我找不到任何东西.我不确定这是怎么做的,它可以解决我的问题,所以如果你对此有所了解,请告诉我.
最后说明,这是在Mac 10.7.5上运行的.
我正在编写一个宏来从我公司的内部网站下载csv文件.
由于许多原因,我无法使用任何xmlhttp对象.宏将下载该文件.问题是Internet Explorer 9会提示用户使用"打开","保存"和"取消"按钮.
在IE中,Alt + Shift + S将保存下载,但我无法从Excel VBA中获取Sendkeys"%+ s"方法.
这是相关代码:
Function followLinkByText(thetext As String) As Boolean
'clicks the first link that has the specified text
Dim alink As Variant
'Loops through every anchor in HTML document until specified text is found
' then clicks the link
For Each alink In ie.document.Links
If alink.innerHTML = thetext Then
alink.Click
'waitForLoad
Application.Wait Now + TimeValue("00:00:01")
Application.SendKeys "%+s", True
followLinkByText = True
Exit Function
End If
Next
End Function
Run Code Online (Sandbox Code Playgroud) 我试图循环一个给定的目录,以找到最新下载的csv文件.由于某种原因,即使文件存在,我的Dir函数也找不到任何文件.我对VBA并不完全熟悉,所以我可能会错过某种执行Dir功能的参考,但我找不到任何在线告诉我需要的东西.所有的例子和论坛都像我一样使用Dir,但我不能让我的工作.这是代码,如果你能看到我做错了,请告诉我:
Public Function Get_File() as string
Dim filePath As String
ChDir ("..")
filePath = CurDir
'Goes back to Documents directory to be in same directory as macro
ChDir (filePath & "\Documents")
filePath = filePath & "\Downloads\test.txt"
filePath = getLatestFile(filePath)
Get_File = filePath
End Function
Public Function getLatestFile(pathToFile As String) As String
Dim StrFile As String
Dim lastMod As Variant
Dim nextMod As Variant
Dim lastFileName As String
StrFile = Dir(pathToFile)
lastFileName = StrFile
lastMod = FileDateTime(StrFile)
While Len(StrFile) > 0 …Run Code Online (Sandbox Code Playgroud) 我一直在关注使用Redux设置React 这个教程,我注意到了一些我不熟悉的语法.函数参数定义里面的花括号是做什么的?
例:
function Stream({ tracks = [], onAuth }) { #what is going on here?
return (
<div>
... #component stuff here
</div>
);
}Run Code Online (Sandbox Code Playgroud)
这个React具体吗?或者这与Babel或其他图书馆有关?我是这个技术的新手,所以不确定发生了什么.
我按照django网站(https://docs.djangoproject.com/en/1.7/topics/logging/#examples)的指示在我的django应用程序中添加了一些记录器,但无论出于何种原因,日志都没有应用这些格式.这是我的记录器设置:
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
},
'simple': {
'format': '%(asctime)s : module %(name)s : %(message)s'
},
},
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse'
},
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
}
},
'handlers': {
'null': {
'level': 'DEBUG',
'class': 'logging.NullHandler',
},
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
},
'file_request': {
'level': 'WARNING',
'class': 'logging.handlers.RotatingFileHandler',
'filename': os.path.join(file_root, 'request' , 'wilkins_request.log'),
'maxBytes': 1024*1024*1, # 1MB
'backupCount': …Run Code Online (Sandbox Code Playgroud) 目前我有一个循环字典的测试用例,每个字典都包含一个我想在网页上测试的单独值(我使用的是 Selenium Webdriver,尽管这不一定与问题相关)。这个测试用例基本上将检查产品的所有可能的购买路径是否正常工作,结果大约有 200 条不同的路径。我想保持代码简单,而不是对每一个都进行测试。以下是我为缩短代码所做的工作的示例:
self.templates = {"sales": self.sales", ...)
self.template_keys = ["sales",....]
self.sales - {"locator1": "<locataor info>, ...)
.... <more dictionaries>
for key in self.template_keys:
for template in self.templates[key]:
<do purchase path in selenium webdriver>
assert end_url == expected_end_url # Would like failure to not end test
Run Code Online (Sandbox Code Playgroud)
我的问题是如何让嵌套 for 循环中的断言不会致命失败并继续下一步。我读过这篇 stackoverflow 文章,似乎他决定做自己的事情,而没有提供任何关于他所做的事情的信息。我知道这是一种反模式,但不值得花时间将它们全部单独写出来。我想知道是否有人有一个很好的解决方案,就像 Groovy 中的软断言一样。
python ×3
automation ×2
excel ×2
vba ×2
assert ×1
babeljs ×1
cron ×1
cron-task ×1
crontab ×1
deployment ×1
django ×1
excel-vba ×1
java ×1
javascript ×1
logging ×1
maven ×1
netbeans ×1
netbeans-7 ×1
reactjs ×1
redux ×1
selenium ×1
shell ×1
unit-testing ×1