CopyPaste一个网站

时间:2016-03-18 10:48:33

标签: web-scraping screen-scraping imacros

我想将网页的HTML内容作为文本字符串提取,然后将其粘贴到表单中。

当我运行我的宏时,我希望表单字段显示提取的HTML内容。相反,它显示了文字字符串"EXTRACT"(这是我认为的变量名称)。

如何将实际提取的html内容添加到表单中?具体而言,提取内容的参考名称是什么?

具体来说,问题出在CONTENT=EXTRACTEXTRACT实际应该是什么?因为到目前为止,它似乎被翻译为文字字符串,而不是我想要的变量引用。

我-imacro.iim
VERSION BUILD=1234567 RECORDER=FX

'Extract data from target
TAB OPEN
TAB T=2
URL GOTO=http://www.example.com/my-products.php
TAG POS=1 TYPE=HTML ATTR=* EXTRACT=TXT

'Submit data to form
TAB OPEN
TAB T=3
URL GOTO=https://docs.google.com/forms/d/xxxxxxxxxxxxxxxx/viewform
TAG POS=1 TYPE=TEXTAREA FORM=ID:mG61Hd ATTR=NAME:Extraction<SP>Results CONTENT=EXTRACT
TAG POS=2 TYPE=DIV ATTR=CLASS:quantumWizButtonPaperbuttonFocusOverlay&&TXT:
TAG POS=1 TYPE=SPAN ATTR=TXT:Submit

2 个答案:

答案 0 :(得分:2)

尝试将提取物用作变量引用,如下所示:

TAG POS=1 TYPE=TEXTAREA FORM=ID:mG61Hd ATTR=NAME:Extraction<SP>Results CONTENT={{!EXTRACT}}

答案 1 :(得分:0)

标有 操纵提取 on this web page shows the following example的部分,了解如何使用glutGet(GLUT_ELAPSED_TIME)

操纵提取
void idle(void) {
    int t;
    /* Delta time in seconds. */
    float dt;
    t = glutGet(GLUT_ELAPSED_TIME);
    dt = (t - old_t) / 1000.0;
    old_t = t;
    glutPostRedisplay();
}

void init(void) {
    old_t = glutGet(GLUT_ELAPSED_TIME);
}

And here is a possibly even better example

http://wiki.imacros.net/Demo-ExtractAndFill
{{!EXTRACT}}