如何处理JS呈现的DOM?

时间:2018-08-05 03:27:36

标签: javascript dom cefsharp aliexpress

我正在尝试登录AliExpress门户以使用Vanilla js自动填写登录表单。 而且我意识到登录表单未在其原始登录页面中呈现。相反,该表格是在下载主页后由javascript生成的。

我的问题是,如何处理由javascript渲染的DOM对象?

从chrome开发人员工具中,我可以看到生成的表单和所有表单,但是当我尝试查询用户名输入和密码时,我总是收到null。

enter image description here

我没有使用Selenium,我正在使用CefSharp和js注入。我在Chrome控制台中用来查找元素的测试代码如下所示。

(function() {
    try {
        getUsernameEl();
    } catch(err) { 
        return err;
    }

    function getUsernameEl() {
        console.log("TRYING....");
        var el = document.querySelector("input#fm-login-id.fm-text");
        if (el == null) {
            setTimeout(function() {
                getUsernameEl();
            }, 2000);
        } else {
            el.value = "myemail@email.com";
            return el;
        }
    }
})();

0 个答案:

没有答案