Web scraping 简单的iMacros循环和提取

Web scraping 简单的iMacros循环和提取,web-scraping,imacros,Web Scraping,Imacros,我对iMacro脚本编写的世界非常陌生,因此我很难(我相信是)获得一个非常简单的数据刮取工作 我希望抓取的站点由一个索引页(一个表,其中每一新行都是指向产品页的超链接)和产品页(每次都是相同的格式)组成。我希望宏执行以下操作 单击第一个超链接(表行即POS1) 加载页面后,刮取10个字段(每页上始终位于同一位置) 返回(到索引页) 向下递增到下一个超链接(下一个表行,即POS2) 提取数据并重复 将数据导出为单个文件/csv,每一组刮取的数据都是新行 这就是我目前所拥有的。。。(链接已删除,因为

我对iMacro脚本编写的世界非常陌生,因此我很难(我相信是)获得一个非常简单的数据刮取工作

我希望抓取的站点由一个索引页(一个表,其中每一新行都是指向产品页的超链接)和产品页(每次都是相同的格式)组成。我希望宏执行以下操作

  • 单击第一个超链接(表行即POS1)
  • 加载页面后,刮取10个字段(每页上始终位于同一位置)
  • 返回(到索引页)
  • 向下递增到下一个超链接(下一个表行,即POS2)
  • 提取数据并重复
  • 将数据导出为单个文件/csv,每一组刮取的数据都是新行
  • 这就是我目前所拥有的。。。(链接已删除,因为它需要登录)

    上面的脚本仅从第一个产品页面收集数据,并将其导出为多个CSV(无论我多次将其声明为循环)


    任何帮助都将不胜感激。如果您需要更多信息,请告诉我。

    您的宏看起来不错。我只会在最后删除BACK命令,因为在每个循环中都有导航回索引页的URL GOTO。只要你在使用“播放(循环)”按钮,它就会工作

    如果手动增加POS的值,宏是否工作?我的意思是,首先运行POS=1的宏(而不是{{!loop}),然后再次运行POS=2的宏,依此类推

    如果您有问题,也可以直接写信给support@iopus.com或者把你的问题贴在网上

    问候,


    Marcia

    你的宏看起来不错。我只会在最后删除BACK命令,因为你有URL GOTO,它可以在每个循环中导航回索引页。只要你使用“播放(循环)”按钮,它就应该可以工作

    如果手动增加POS的值,宏是否工作?我的意思是,首先运行POS=1的宏(而不是{{!loop}),然后再次运行POS=2的宏,依此类推

    如果您有问题,也可以直接写信给support@iopus.com或者把你的问题贴在网上

    问候,


    玛西娅

    我相信
    {{!LOOP}}
    。我相信
    {{!LOOP}}
    VERSION BUILD=7401598
    TAB T=1
    TAB CLOSEALLOTHERS
    URL GOTO=https://XXXXXXXXXXXX
    TAG POS={{!loop}} TYPE=TD FORM=ID:form1 ATTR=TXT:*
    TAG POS=8 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=6 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=20 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=24 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=22 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=34 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=38 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=42 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=46 TYPE=TD FORM=ID:form1 ATTR=TXT:* EXTRACT=TXT
    TAG POS=66 TYPE=TD FORM=ID:form1 ATTR=CLASS:labelBold EXTRACT=TXT
    SAVEAS TYPE=EXTRACT FOLDER=C:\iMacrosExports\ FILE=Extract_{{!NOW:ddmmyy_hhnnss}}.csv
    WAIT SECONDS=2
    BACK