新手到applescript,抱歉,如果它很蠢。我一直在尝试编写一个脚本来检查网络是否正常,如果不正常,请转到url并单击网页上的登录按钮(实际上,网页上有“用户名”和“密码”,我的浏览器会自动填充)。我使用了以下代码;
try
set thePing to do shell script "/sbin/ping -o -c 1 www.google.com"
on error
tell application "Google Chrome" to open location "https://mwcp-ekm-04.adlkerala.com:8001"
delay 5
tell application "System Events"
tell process "chrome"
click at {585, 220}
end tell
end tell
end try
(我知道一个javascript会比点击更好,但后来我不知道怎么做)
运行时,我得到以下错误系统事件得到一个错误:无法使{585,220}进入类型列表。
编辑:在谷歌搜索之后,我成功地提取了java代码<代码>尝试设置ping to do shell脚本“/sbin/ping-o-c1 www.google.com”,告诉应用程序“Safari”打开位置https://mwcp-ekm-04.adlkerala.com:8001delay 3告诉应用程序“Safari”do JavaScript“文档。getElementById('submit')。点击();“在第一个窗口的当前选项卡中,结束tell
结束try,但现在返回一个结果“缺少值”
如果有任何帮助,我将不胜感激
谢啦
我刚刚回答了一个非常类似的问题,s.o.试图“点击桌面”(这里)。。。
系统事件的sdef文件说,“单击”在发送到要单击的{x,y}位置的“进程”对象[时仍然有效,以全局坐标(意思是:以绝对屏幕坐标,而不是相对于应用程序的窗口)。
所以:你不能“点击”桌面上可见的文件(作为“文件”,实际上是:进程“查找器”滚动区域的第1组图像),但你仍然可以点击任何窗口/按钮。
我认为点击
在10.9停止工作。或者至少
tell application "System Events" to tell process "Safari"
set frontmost to true
click at {20, 20}
end tell
在10.8中适用于我,但会导致一个错误,如“系统事件出错:无法将{20,20}放入类型列表”数字-1700从{20,20}到10.9中的列表。
尝试使用MouseTools或cliclick(或JavaScript)代替。
简介 Laravel 的事件提供了一个简单的观察者实现,能够订阅和监听应用中发生的各种事件。事件类保存在 app/Events 目录中,而这些事件的的监听器则被保存在 app/Listeners 目录下。这些目录只有当你使用 Artisan 命令来生成事件和监听器时才会被自动创建。 事件机制是一种很好的应用解耦方式,因为一个事件可以拥有多个互不依赖的监听器。例如,如果你希望每次订单发货时向用户发送
事件机制是一种很好的应用解耦方式。CatLib事件系统让我们可以订阅和监听程序中出现的各种事件。 应用程序已经默认提供了事件系统,供给全局事件使用。如果您要定义私有范围的事件可以这么做: var dispatcher = new EventDispatcher(); 名词定义 载荷是指程序调用所附带的上下文信息。不同的调用者所提供的上下文信息各不相同。 注册普通监听器 通过 AddListene
问题内容: 打开baseUrl后,我手动单击同意,然后搜索要显示的医生列表。我想翻阅清单。现在,Selenium仅通过找到“ ”来第一次单击。之后它停止并给出以下错误。 问题答案: 错误说明了一切: 在循环内的程序中,您将在页面上找到文本标记为 > >*的tag元素并进行调用,并且由于 HTML DOM 发生更改而导致该事件。当您的程序第二次迭代循环时,也许未加载标识为的 WebElement ,
事件系统是一个框架非常重要的部分,用于响应用户的各种行为。 浏览器提供了3个层次的api,用于响应用户的各种行为。 1.最原始的是写在元素标签内。 2.再次是脚本内,以el.onXXX = function绑定的方式,统称为DOM0事件系统。 3.最后是多投事件系统,一个元素的同一类型事件可以绑定多个回调,统常称为DOM2事件系统。 由于浏览器大战,现存两套API。 IE与opera: 绑定事件:
问题内容: 打开baseUrl后,我手动单击同意,然后搜索要显示的医生列表。我想翻阅清单。现在,Selenium仅通过找到“ ”第一次单击。之后它停止并给出以下错误。 问题答案: 错误说明了一切: 在循环内的程序中,您将在页面上找到文本标记为 > >*的tag元素并进行调用,并且由于 HTML DOM 发生更改而导致的事件。当您的程序第二次迭代循环时,也许未加载标识为的 WebElement ,但