Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iMacro Div中的多个链接_Javascript_Html_Firefox_Imacros - Fatal编程技术网

Javascript iMacro Div中的多个链接

Javascript iMacro Div中的多个链接,javascript,html,firefox,imacros,Javascript,Html,Firefox,Imacros,在iMacro中,我试图提取div中的多个链接,转到它们并下载页面。我目前有多个标签和下载良好,但不知道如何提取多个链接,并前往每一个。 html的外观如下所示: <div class="bodyTXT"> <table class="bodytxt"> <tr valign="top"> <td> <table class="bodyTXT"> <tr valign="

在iMacro中,我试图提取div中的多个链接,转到它们并下载页面。我目前有多个标签和下载良好,但不知道如何提取多个链接,并前往每一个。 html的外观如下所示:

<div class="bodyTXT">
  <table class="bodytxt">
    <tr valign="top">
      <td>
        <table class="bodyTXT">
          <tr valign="top">
            <td>
              <!--Has two links inside :(-->
              <a href="a/relative/link/add/domain/before">
                <a href="example.com" target="_blank">example.com</a>
            </td>
          </tr>
        </table>

        <table class="bodyTXT">
          <tr valign="top">
            <td>
              <!--Has two links inside :(-->
              <a href="a/different/relative/link/add/domain/before">
                <a href="another-example.com" target="_blank">another-example.com</a>
            </td>
          </tr>
        </table>
      </td>
  </table>
</div>

作为一种更通用的解决方案,我可以推荐以下代码:

SET startLoop 1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TABLE ATTR=CLASS:bodyTXT EXTRACT=HTM
SET maxLoop EVAL("'{{!EXTRACT}}'.match(/ href=/g).length;")
SET !LOOP EVAL(1-{{maxLoop}}+{{startLoop}})
SET normLoop EVAL({{!LOOP}}+{{maxLoop}}-1)

TAG POS=R-1 TYPE=* ATTR=* EXTRACT=TXT
SET !EXTRACT NULL
TAG POS=R{{normLoop}} TYPE=A ATTR=* EXTRACT=HREF

'PROMPT {{!EXTRACT}}


您可以尝试应用相对定位,如下所示:

TAG POS=3 TYPE=TABLE ATTR=CLASS:bodyTXT
TAG POS=R-2 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R2 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R-1 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R2 TYPE=A ATTR=* EXTRACT=HREF

(如果需要,请注意提取顺序。)

作为更通用的解决方案,我可以推荐以下代码:

SET startLoop 1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TABLE ATTR=CLASS:bodyTXT EXTRACT=HTM
SET maxLoop EVAL("'{{!EXTRACT}}'.match(/ href=/g).length;")
SET !LOOP EVAL(1-{{maxLoop}}+{{startLoop}})
SET normLoop EVAL({{!LOOP}}+{{maxLoop}}-1)

TAG POS=R-1 TYPE=* ATTR=* EXTRACT=TXT
SET !EXTRACT NULL
TAG POS=R{{normLoop}} TYPE=A ATTR=* EXTRACT=HREF

'PROMPT {{!EXTRACT}}


您可以尝试应用相对定位,如下所示:

TAG POS=3 TYPE=TABLE ATTR=CLASS:bodyTXT
TAG POS=R-2 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R2 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R-1 TYPE=A ATTR=* EXTRACT=HREF
TAG POS=R2 TYPE=A ATTR=* EXTRACT=HREF

(如果需要,请注意摘录的顺序。)

如果其中一个表中缺少第二个链接,是否有办法做到这一点?如果其中一个表中缺少第二个链接,是否有办法做到这一点?