gpt4 book ai didi

javascript - CasperJS 的 getElementsByXpath 返回带有有效 XPath 的 null

转载 作者:行者123 更新时间:2023-11-28 15:14:42 25 4
gpt4 key购买 nike

我正在从网站上抓取足球比分数据。所有分数都在表格中,每个 <tr>后面有“block home matches 17”和一些独特的东西。

我在 Chrome 开发工具中测试了我的 xpath,它仅识别我需要的表行。

var utils = require('utils');
var casper = require('casper').create();
var xpath = require('casper').selectXPath;
var result = [];

function getScores(){
console.log("getting scores");
result = __utils__.getElementsByXPath("//tr[contains(@id,'block_home_matches_17')");
}

casper.start('http://int.soccerway.com/', function() {
console.log("casper start....");
var l = getScores();
utils.dump(l);
});

casper.run();

代码返回 [] 作为 utils.dump!为什么?我的 xpath 是有效的!

最佳答案

您遇到三个问题:

您可以通过 CasperJS 函数检索目标 DOM 节点的表示:

casper.start('http://int.soccerway.com/', function() {
utils.dump(this.getElementsInfo(xpath("//tr[contains(@id,'block_home_matches_17')")));
});

或者直接处理页面上下文中的元素:

casper.start('http://int.soccerway.com/', function() {
utils.dump(this.evaluate(function(){
return __utils__.getElementsByXPath("//tr[contains(@id,'block_home_matches_17')").map(function(el){
return {} // TODO: produce your own representation
});
}));
});

关于javascript - CasperJS 的 getElementsByXpath 返回带有有效 XPath 的 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34578385/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com