【问题标题】:Extracting data from a website using iMacros使用 iMacros 从网站中提取数据
【发布时间】:2013-02-20 23:05:56
【问题描述】:

我对 iMacros 非常陌生,但似乎对它的工作原理有基本的了解。但是,我有两个问题似乎无法解决。 iMacros 加载自可执行服务,该服务在需要时运行以获取信息。提取数据后,服务将获取数据并将其写入服务器 C 驱动器上的文件。直到大约一个月前,这一直运行良好。亚马逊改了网站,现在无法让脚本配合。非常感谢所有帮助解决此问题。

  1. 脚本不会提取文本,并且
  2. 每次运行脚本后都会打开一个新的 iMacros 浏览器。

我研究了互联网,以许多不同的方式操作脚本,我使用了记录选项,以及创建脚本以提取数据的向导。我不确定我错过了什么。我的脚本在下面。

VERSION BUILD=7401598
TAB T=1
URL GOTO=https://sellercentral.amazon.com/gp/fba/revenue-calculator/index.html/ref=au_xx_cont_xx?ie=UTF8&lang=en_US
WAIT SECONDS=10
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:search-form ATTR=ID:search-string CONTENT={{Asin}}
WAIT SECONDS=10
TAG POS=1 TYPE=BUTTON ATTR=ID:search-products
WAIT SECONDS=10
TAG POS=1 TYPE=BUTTON ATTR=ID:update-fees-link
WAIT SECONDS=10
TAG POS=1 TYPE=SPAN ATTR=TXT:Order<SP>Handling
WAIT SECONDS=10
TAG POS=1 TYPE=SPAN ATTR=TXT:Pick<SP>&<SP>Pack
WAIT SECONDS=10
TAG POS=1 TYPE=SPAN ATTR=TXT:Weight<SP>Handling
WAIT SECONDS=10

我需要提取的文本是订单处理、拣货和包装、重量处理。

【问题讨论】:

    标签: imacros


    【解决方案1】:

    您应该尝试在命令之后放置 EXTRACT=TXT。如果记录不起作用,还要检查页面的 html 并发出命令。例如,如果您在页面上有一个链接,这将是它的 HTML 代码。

    <a href="www.somestuff.com">click me</a>
    

    iMacros 从中提取链接和文本。

    TAG POS=1 TYPE=A ATTR=HREF:www.somestuff.com EXTRACT=TXT
    
    TAG POS=1 TYPE=A ATTR=HREF:www.somestuff.com EXTRACT=HREF
    

    几乎没有其他变化,但这是主要部分。在您的情况下,这将是正确的代码。

    TAG POS=1 TYPE=BUTTON ATTR=ID:search-products EXTRACT = TXT
    WAIT SECONDS=10
    TAG POS=1 TYPE=BUTTON ATTR=ID:update-fees-link EXTRACT = TXT
    WAIT SECONDS=10
    TAG POS=1 TYPE=SPAN ATTR=TXT:Order<SP>Handling EXTRACT = TXT
    WAIT SECONDS=10
    TAG POS=1 TYPE=SPAN ATTR=TXT:Pick<SP>&<SP>Pack EXTRACT = TXT
    WAIT SECONDS=10
    TAG POS=1 TYPE=SPAN ATTR=TXT:Weight<SP>Handling EXTRACT = TXT
    WAIT SECONDS=10
    

    尝试一下,请为此使用 iMacros FireFox 插件。

    编辑:

    您可以在 JavaScript 中声明一个抓取宏。

    var macroScrape;
    
    macroScrape ="CODE:";
    macroScrape +="TAG POS=1 TYPE=BUTTON ATTR=ID:search-products EXTRACT = TXT";
    
    
    iimPlay(macroScrape)
    var text=iimGetLastExtract();
    
    alert(text);
    

    我在一次宏中只使用一次 EXTRACT 命令。如果我需要更多信息,我会在上面的示例中使用更多声明为变量的宏代码。如果您知道如何使用它,这可能会起作用。

    iMacros 支持有时真的很慢。

    【讨论】:

    • 非常感谢您的回复。即使我们有 iOpus 的付费企业许可证,他们也没有在支持论坛或我发送到他们的支持电子邮件地址的电子邮件中做出任何回应。我试过这个,当涉及到 TAG POS=1 TYPE=BUTTON ATTR=ID:search-products EXTRACT = TXT 时,搜索按钮甚至没有点击,屏幕上也没有加载任何信息。在运行结束时,我仍然得到“错误”(Asin 编号):输入文本格式不正确。”
    • 为了使用这些信息,您必须以某种方式存储它。我将编辑文本并为您指路。
    • 我添加了一个可以帮助你的新答案。
    • 我们的服务是用c#编写的。在亚马逊更改页面之前,该脚本很好。我们不使用 JavaScript
    • 那么您必须在 C# 中找到一些示例并找出问题所在。我看过 C# iMacros 项目,但我没有付费版本可以用 C# 编码。程序是一样的。将宏声明为变量并使用它进行操作。在论坛forum.iopus.com/viewtopic.php?t=7561查看此主题
    猜你喜欢
    • 1970-01-01
    • 2020-03-03
    • 2012-12-21
    • 2017-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多