我想获得此href(此URL),但我无法使用CasperJS获取它

时间:2018-03-13 09:34:13

标签: javascript web-scraping casperjs

此处显示href属性:

the href attribute is present here

我尝试使用CasperJS从图像中将其作为网址"CompanyDetails.aspx?ISIN=EGS3G191C017",但我无法得到它。

我使用过这些方法,但没有成功:

尝试#1:

var links = self.casper.getElementAttribute('//* 
[@id="ctl00_C_S_RadGrid2_ctl00_ctl05_divContainer"]/a[1]', 'href');

Error: TypeError: null is not an object (evaluating 
'__utils__.findOne(selector).getAttribute')

尝试#2:

var links = self.casper.getElementsAttribute(x('//* 
[@id="ctl00_C_S_RadGrid2_ctl00_ctl05_divContainer"]/a[1]'), 'href');

在这里,我没有收到错误,但var links仅包含空格。

2 个答案:

答案 0 :(得分:0)

const link = document
            .getElementById('ctl00_C_S_RadGrid2_ctl00_ctl05_divContainer')
            .firstElementChild
            .getAttribute('href');

答案 1 :(得分:0)

您可以尝试使用javascript直接使用casper的方法评估,这将带您进入浏览器上下文

var link = casper.evaluate(function() {
    return document.querySelector('ctl00_C_S_RadGrid2_ctl00_ctl05_divContainer a').href;
})

希望有所帮助