Getting the error in Script "Uncaught SyntaxError: Unexpected token )"
Getting the error in Script "Uncaught SyntaxError: Unexpected token )"
在方法 EvaluateScriptAsync(脚本)中使用 CefSharp 时
剧本如下
script = @"(function(){var linksArray = new Array();
for (var i = 0; i < document.querySelectorAll('.g').length; i++)
{
var elementWithClassRC = document.querySelectorAll('.g')[i].querySelectorAll('.rc');
var rElement = elementWithClassRC[0].getElementsByClassName('r');
var sElement= elementWithClassRC[0].getElementsByClassName('s');
var hrefValue = rElement[0].querySelector('a').getAttribute('href');
var h3Value = rElement[0].querySelector('a').querySelector('h3').innerHTML;
var spanValue = sElement[0].querySelector('span').innerText;
linksArray[i] = [hrefValue,h3Value,spanValue];
return linksArray;})();";
在评估结果中,我得到 javaScriptResponse.Result 作为此错误“"Uncaught SyntaxError: Unexpected token )\n@ about:blank:13:22"”。
请帮我解决这个问题。
您在 for 循环中缺少“}”。
script = @"(
function(){
var linksArray = new Array();
for (var i = 0; i < document.querySelectorAll('.g').length; i++) {
var elementWithClassRC = document.querySelectorAll('.g')[i].querySelectorAll('.rc');
var rElement = elementWithClassRC[0].getElementsByClassName('r');
var sElement= elementWithClassRC[0].getElementsByClassName('s');
var hrefValue = rElement[0].querySelector('a').getAttribute('href');
var h3Value = rElement[0].querySelector('a').querySelector('h3').innerHTML;
var spanValue = sElement[0].querySelector('span').innerText;
linksArray[i] = [hrefValue,h3Value,spanValue];
// for loop is not end here
return linksArray;
})();";
在方法 EvaluateScriptAsync(脚本)中使用 CefSharp 时 剧本如下
script = @"(function(){var linksArray = new Array();
for (var i = 0; i < document.querySelectorAll('.g').length; i++)
{
var elementWithClassRC = document.querySelectorAll('.g')[i].querySelectorAll('.rc');
var rElement = elementWithClassRC[0].getElementsByClassName('r');
var sElement= elementWithClassRC[0].getElementsByClassName('s');
var hrefValue = rElement[0].querySelector('a').getAttribute('href');
var h3Value = rElement[0].querySelector('a').querySelector('h3').innerHTML;
var spanValue = sElement[0].querySelector('span').innerText;
linksArray[i] = [hrefValue,h3Value,spanValue];
return linksArray;})();";
在评估结果中,我得到 javaScriptResponse.Result 作为此错误“"Uncaught SyntaxError: Unexpected token )\n@ about:blank:13:22"”。 请帮我解决这个问题。
您在 for 循环中缺少“}”。
script = @"(
function(){
var linksArray = new Array();
for (var i = 0; i < document.querySelectorAll('.g').length; i++) {
var elementWithClassRC = document.querySelectorAll('.g')[i].querySelectorAll('.rc');
var rElement = elementWithClassRC[0].getElementsByClassName('r');
var sElement= elementWithClassRC[0].getElementsByClassName('s');
var hrefValue = rElement[0].querySelector('a').getAttribute('href');
var h3Value = rElement[0].querySelector('a').querySelector('h3').innerHTML;
var spanValue = sElement[0].querySelector('span').innerText;
linksArray[i] = [hrefValue,h3Value,spanValue];
// for loop is not end here
return linksArray;
})();";