数据输入到htm网页上的javascript

时间:2016-10-18 12:00:06

标签: javascript bash curl webpage

编码语言不是我的强项,所以请原谅我说的一切无知。

我需要将数据输入到运行javascript的网页中来分析我提供的数据......问题是我有几百个人,而且网页一次只能处理一个人。 这是页面 http://www.hprg.com/hapest5/hapest5b/hapest5.htm

我如何使用终端(或其他任何东西)迭代上传每组数据到页面并检索结果。

我已经尝试过curl和wget了... https://journalxtra.com/linux/bash-linuxsanity/bash-filling-web-forms-with-curl-and-wget/ ...使用formfind& wget / curl但我认为它不能用于javascript输入。

以下是所需输入的示例。

输入字符串:13,21,15,11,0,0,0,0,11,13,11,30,16,0,0,0,0,0,14,21,0,0, 0,0,0,0,22,0,0,15,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0

没有额外的等位基因;隔板=逗号

我使用iMac(2015年末)与macOS Sierra。

1 个答案:

答案 0 :(得分:0)

我写了一个javascript,可以帮助自动完成你想要做的事情至少一点点。

var inputStringArray = ['13,21,15,11,0,0,0,0,11,13,11,30,16,0,0,0,0,0,14,21,0,0,0,0,0,0,22,0,0,15,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0', '10001', '0'];

function setInputString(newInputStr) {
    document.getElementById('haplotype').value = '';
    document.getElementById('haplotype').value = newInputStr;
}

function getResultData() {
    var rowArray = document.querySelectorAll('#results tr'),
        i, dataObj = {},
        rowNode;
    for (i = 0; i < rowArray.length; i++) {

        if (i > 0) {
            rowNode = rowArray[i].childNodes;
            dataObj[rowNode[0].innerText] = {
                fitness_score: rowNode[1].innerText,
                probability: rowNode[2].innerText
            }
        }
    }  
    return dataObj;
}

function execute(inputStringArray) {
    var i, resultData = {};

    for (i = 0; i < inputStringArray.length; i++) {
        setInputString(inputStringArray[i]);
        parse();
        resultData[inputStringArray[i]] = getResultData();
    }
    console.log(resultData);
    resultData = null;
}

execute(inputStringArray);

基本上,您需要在脚本中更改的唯一内容是&#39; inputStringArray&#39;中的值。您应该输入任意数量的输入字符串(输入字符串应该用单引号括起来并用逗号分隔)。

打开Goog​​le Chrome并按键盘上的F12按钮进入Chrome开发者工具并导航到“控制台”标签&#39;:https://developers.google.com/web/tools/chrome-devtools/inspect-styles/shortcuts

进入控制台屏幕后,从下面粘贴脚本并替换inputStringArray中的字符串,然后按Enter键。您应该在控制台中看到一个javascript对象,其中包含您要查找的结果。结果将如下所示: Example of formatted data

此脚本仅用于在您的问题中提供的链接的控制台中运行。您可以随意编辑脚本。