как getelementbyid () или getelementbyclassname () со страницы, которая анализируется в скрипте приложений Google с помощью функции urlfetchapp? - PullRequest
1 голос
/ 07 октября 2019

Я хочу использовать скрипт приложений Google для анализа страницы, а затем введите имя пользователя и пароль для ввода элементов на этой странице. но когда я пытаюсь использовать UrlFetchApp.fetch (url) .getContentText () и затем пытаюсь использовать getelementbyid (), чтобы получить нужные поля ввода имени пользователя и пароля, ничего не происходит, даже если кто-то может помочь мне написать команду click () дляэлемент. Я сделал это с Python, но я не знаю, как автоматизировать это с помощью сценариев Google. Пожалуйста, держите ответ конкретно в ванильном javascript, так как я не понимаю jquery. у меня есть парсинг xmlservice, но он не работает для URL, который меня интересует

// code.gs

function doGet(e){
return HtmlService.createHtmlOutputFromFile('scrapetest');
}

function getUrlData(url) {
var doc = UrlFetchApp.fetch(url).getContentText();
return doc                               
}

function getLog(el){

Logger.log(el.length);
}


//scrapetest.html
<script>

document.addEventListener('DOMContentLoaded', function() {
var elems = document.querySelectorAll('select');
var instances = M.FormSelect.init(elems);
});

//these elements are there is the htmlfile that i created//these can       be fetched using the getElementById() function//

document.getElementById("did").addEventListener("click",fdid);
document.getElementById("dip").addEventListener("click",fdip);

function fdid(){
var url="abc";
google.script.run.withSuccessHandler(parsev).getUrlData(url);
}


function parsev(htmlpage){
var el=htmlpage.getElementById('scrollTopBtn');//nothing happens   here and the logger logs nothing
google.script.run.getLog(el);

}

...