Tag: 脚本

在生产中发布基于python / ruby​​ / script的Web应用程序时的实践

我纯粹是一个Windows程序员,花了我所有的时间来破解VC ++。 最近我一直在使用几个基于Web的应用程序,我自己使用python(/ pylons框架)构建应用程序并在rails上执行项目。 所有的web项目都托管在ubuntu linux上。 我们在构建和发布VC ++ windows应用程序时遵循的RELEASE过程和检查列表在基于脚本的语言方面仅仅没有用处。 所以我们现在不构建任何二进制文件。 我在使用开源cms应用程序时通过ftp服务器将asp / php文件复制到IIS文件夹中。 因此,FTP是将文件托管到Web服务器的方法之一。 现在我们感到懒惰或不那么热衷于通过ftp复制文件而不是我们使用SVN结账 ,我们只是做svn更新来获取最新的副本。 SVN checkout和svn update是将最新构建文件更新到服务器的正确方法吗? 使用svn更新有什么缺点吗? 有没有更好的方法将脚本/基于Web的脚本发布到生产服务器? PS:我在linux平台的某个扩展上使用了ssh服务器。

Watir更改Mozilla Firefox首选项

我正在运行一个使用Watir的Ruby脚本来为我自动化一些东西。 我正在尝试自动将某些文件保存到某个目录。 因此,在我的Mozilla设置中,我将默认下载目录设置为说桌面并选择自动保存文件。 但是,当我开始运行脚本时,这些更改不会反映出来。 似乎首选项恢复为默认值。 我已经包括以下内容 require “rubygems” # Optional. require “watir-webdriver” # For web automation. require “win32ole” # For file save dialog. 并打开一个新的firefox实例: browser = Watir::Browser.new(:firefox) 关于为什么偏好会因此受到挫折的任何想法? 或者我正在尝试做什么的其他想法? (自动保存文件)。 谢谢

为C ++选择嵌入式脚本语言

我想选择一种我将在C ++上使用的嵌入式脚本语言。 它应该连接Oracle等数据库。 我的主机应用程序是服务器应用程序 这会将原始数据传递给脚本。 该脚本将解析并执行一些特定的逻辑。 还更新数据库。 然后脚本将返回原始数据作为结果。 你能帮我选择吗? 感谢名单

Ruby沙盒与集成脚本语言

我目前正在使用Ruby中基于文本的游戏引擎,应用程序分为/ lib中的Ruby代码和/ data中的YAML数据,在游戏需要时加载。 我想允许数据文件包含基本脚本,主要是在事件/观察者模型中。 但是,我还希望用户能够生成和共享自定义方案,而无需担心脚本中嵌入的恶意代码。 附录:我最初的计划是将用户创建的内容分为两种类型,“模块”只是数据(因此是安全的)和插件,它们增加了额外的function(但显然不安全)。 为了类似于桌面游戏,模块就像发布的冒险场景和内容,插件将是包含附加规则和系统的规则手册。 示例脚本(当然语法可根据解决方案进行更改): — Location: observers: on_door_open: | monster = spawn_monster(:goblin); monster.add_item(random_item()); monster.hostile = true; 从安全角度来看,如果脚本严格选择加入,可能是通过包含一个带有一点DSL的mixin来实现的,例如: class Frog include Scriptable def jump; … ; end # this can be called from a script allow_scripting :jump def ribbit; … ; end # this cannot be called from a script end 我看了三个四个选项,但我不确定哪种方法最好: […]

Ruby转义ARGV参数或字符串作为shell命令的参数

好吧这让我抓狂: `ls #{“/media/music/Miles Davis”}` 由于“Miles”和“Davis”之间的空间而失败 假设我编写了一个ruby脚本,并且用户将文件路径作为参数传递。 如何将其转义并输入shell-out命令。 是的,是的,我知道,应该避免炮击。 但这是一个人为的例子,我仍然需要这个。 我会做system(“ls”, ARGV[0]) ,但它不会将ls的stdout输出作为字符串返回,这是反引号做得好的。 如何逃避在shellout中插入的内容?

脚本编写HTTP更有效

通常我想自动化http查询。 我目前使用Java(和commons http客户端),但可能更喜欢基于脚本的方法。 一些非常快速和简单的东西。 在哪里我可以设置标题,转到页面而不用担心设置整个OO生命周期,设置每个标题,调用html解析器…我正在寻找任何语言的解决方案,更喜欢脚本

使用Ruby脚本通过https登录网站

好吧,所以这是故事:我正在开发一个Ruby应用程序,它将从网站获取数据,并将该数据聚合到XML文件中。 我需要从中获取数据的网站没有我可以使用的任何API,所以我唯一能想到的是登录网站,依次加载有我需要的数据的页面(在这种情况下,PMs) ;我想存档它们,然后解析返回的HTML。 但问题是,我不知道以编程方式模拟登录会话的任何方法。 是否有人有任何建议,或知道我可以用来成功登录到https页面的任何经过validation的方法,然后使用登录中的临时cookie会话以编程方式从网站加载页面? 它不一定是一个只有Ruby的解决方案 – 我只想知道我是如何实现这一点的。 如果有帮助,有问题的网站是使用Microsoft的.NET Passport服务作为其登录/会话机制的网站。 有关此事的任何意见都是受欢迎的。 谢谢。

Ruby输出到与前一输出相同的行

我正在编写一个Ruby脚本来生成CSV文件。 我的理解是CSV文件中的每一行都是表中的一行。 现在我的脚本生成了这样的东西 Vancouver, Calgary, Routes1, Routes2, Routes3, Vancouver, Toronto etc, etc, etc 但我需要它使它看起来像这样导入数据库 Vancouver, Calgary, Routes1, Routes2, Routes3 Vancouver, Toronto, etc etc etc.. 我的脚本的工作原理是从包含不同文件中路径位置的原始数据中查找温哥华和卡尔加里。 然后脚本转到那些文件以查找实际路由。 每次找到路径(例如Route1)时,脚本都会使用“puts”方法输出它。 问题是每个输出都在一个新行上。 有没有办法在使用“puts”命令时抑制新行命令?

最简单的脚本方法来合并两个文本文件 – Ruby,Python,JavaScript,Java?

我有两个文本文件,一个包含HTML,另一个包含URL slugs: 文件1(HTML): Thomas Friedman – The World Is Flat Michael Dagleish – Scotland In Wartime Dr. Raymond Kinsella – Progress In Cancer Treatments … 文件2(URL SLUGS): thomas-friedman-the-world-is-flat michael-dagleish-scotland-in-wartime dr-raymond-kinsella-progress-in-cancer-treatments … 我需要合并它们,以便将FILE 2中的slugs插入到FILE 1中的HTML中,如下所示: OUTPUT: Thomas Friedman – The World Is Flat Michael Dagleish – Scotland In Wartime Dr. Raymond Kinsella – Progress In Cancer […]

启用将文件拖放到Ruby脚本上

我正在创建一个小的ruby脚本来调整图像大小并将它们保存在指定的目录中。 我希望应用程序尽可能透明。 是否可以允许文件在所有平台上放到我的Ruby脚本中? 例如,用户将文件拖到脚本上,然后将文件路径作为参数并相应地调整图像大小 – 没有GUI,没有控制台等。