【问题标题】:imacros check if proxy is workingimacros 检查代理是否工作
【发布时间】:2015-10-15 07:47:01
【问题描述】:

我有一个巨大的 imacro 脚本要运行。我添加了一个标头以使用列表连接到代理。我正在尝试做一些错误处理。我需要找到一种方法来告诉 imacros 当前代理是否正常工作。如果它正在工作,则继续并执行脚本。如果它不起作用,请切换到下一个循环,以便我们重新开始并尝试使用另一个代理。

这是我目前所拥有的:

SET !ERRORIGNORE YES
TAB T=1
CLEAR
SET !FILESTOPWATCH mydata.csv
STOPWATCH ID=total

SET !DATASOURCE C:\proxies.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !TIMEOUT 60
PROXY ADDRESS={{!COL1}} BYPASS=127.0.0.1 
URL GOTO=http://www.mywebsite.com/test.php

最后一行将连接到 mywebsite.com 并显示页面 test.php,它只是一个带有单词“working”的空白页面。如果我们可以在 60 秒超时之前看到“工作”一词,那么我们可以继续执行脚本的其余部分。但是如果我们在 60 秒之前无法获得“工作”字样,我需要退出当前循环并切换到下一个,这就是我不知道该怎么做

【问题讨论】:

  • 'iMacros' 本身(即 iim 代码)不允许您使用 'if' 子句。为此,您应该应用某些脚本接口,例如Firefox 浏览器的 JavaScript 脚本接口。
  • 有什么例子吗?我不知道如何混合 javascript 或如何在我的情况下使用它。 imacros 具有在页面上定位标签的功能,我可以使用它来检测是否找到“工作”一词,但我不知道下一步该做什么wiki.imacros.net/Web_Testing#Keyword_Search_with_TAG

标签: macros bots imacros


【解决方案1】:

首先尝试这个脚本(对于 Firefox 'iMacros' estension!)并抓住这个想法:

var ret = iimPlayCode("URL GOTO=http://www.mywebsite.com/test.php");
if (ret == 1)
    alert("Page is found!");
else
    alert("Page is not found!");

【讨论】:

  • 很好,但是如果“找不到页面”,我需要使用什么函数来告诉 imacros 切换到下一个循环,以便它可以使用不同的代理重试?谢谢!
  • 如果你有一个用于读取 csv 文件的 js 脚本,你会在行号上看到一个循环。您应该在找不到页面后继续此循环。所以,写:else continue;.
猜你喜欢
  • 1970-01-01
  • 2011-12-23
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 2022-11-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多