当前位置:  开发笔记 > 编程语言 > 正文

是否有相当于Don Libes的*expect*工具用于脚本与网页的交互?

如何解决《是否有相当于DonLibes的*expect*工具用于脚本与网页的交互?》经验,为你挑选了4个好方法。

在交互式控制台应用程序的旧时代,Don Libes创建了一个名为Expect的工具,它使您能够编写与这些应用程序交互的Tcl脚本,就像用户一样.Expect有两个巨大的好处:

有可能编写脚本交互,否则必须手动重复这些交互,乏味.一个典型的例子是拨号上网地狱(从PPP之前的几天).

作为回归套件的一部分,可以编写脚本来编程测试一个人自己的交互式应用程序.

今天,大多数交互式应用程序都在Web上,而不是在控制台上.因此我的问题是:是否有任何工具能够以编程方式与网页和Web表单进行交互,就像Expect提供了以编程方式与控制台应用程序交互的能力一样?

(我最了解的是Chickenfoot.)



1> Logan Capald..:

您可能正在寻找Selenium



2> bedwyr..:

我已经将Selenium RC与Python结合使用,以编程方式驱动网页交互.这使我能够编写相当广泛的用户测试,其中驱动表单和输入并测量其结果.

查看Firefox上的Selenium IDE(如上所述).它允许您在浏览器中记录测试并使用IDE本身或远程控制应用程序进行播放.



3> Ville M..:

Perl Mechanize可以很好地解决这个问题.

HTTPS和一些身份验证问题有时很棘手.我将在未来发布有关这些问题的几个问题.



4> skiphoppy..:

我在以前的生活中做了大量的期望工作,并且一直认为Don Libes的Expect书是我见过的最好写和最具启发性的技术书籍之一.

放下我会说Perl的WWW :: Mechanize库就是你想要的.我在上面注意到你找不到文档.它有很好的文档!在search.cpan.org上查找模块的发行版,看看它包含了什么.有一个FAQ,Cookbook和例子等等.另外,我一直能够在网上获得帮助.如果您无法在此处获取,请尝试使用use.perl.org或perlmonks.org.WWW :: Mechanize的作者Andy Lester 出现在Stack Overflow上.(他也是一个友好而乐于助人的人.)

我相信WWW :: Mechanize还有一个类似于Expect的autoexpect程序的程序:你设置一个代理进程来运行这个程序作为服务器,将浏览器作为代理指向它,执行你想要自动化的动作,然后代理程序为您提供WWW :: Mechanize程序,供您用作项目的基础.(如果它像autoexpect一样工作,你肯定会想从那里进行修改.)

如上所述,WWW :: Mechanize 一个可编程的浏览器(更确切地说,它是一个Web客户端或http客户端).我最后一次看,甚至还在进行中,以支持JavaScript.

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有