我使用 Puppeteer 选取了一些 HTML 元素,方法如下:
await page.$$( 'span.styleNumber' );
我可以使用以下代码获取元素的文本:
console.log( await ( await styleNumber.getProperty( 'innerText' ) ).jsonValue() );
如何获取元素的data-Color属性值?
这是我的脚本:
HTML
<span class="styleNumber" data-Color="Blue">SG1000</span>
<span class="styleNumber" data-Color="Green">SG2000</span>
<span class="styleNumber" data-Color="Red">SG3000</span>
木偶
const puppeteer = require( 'puppeteer' );
( async() => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto( 'http://www.example.com/sample.php' );
// Get a list of all elements.
var styleNumbers = await page.$$( 'span.styleNumber' );
// Print the style numbers.
for( let styleNumber of styleNumbers ) {
try {
console.log( await ( await styleNumber.getProperty( 'innerText' ) ).jsonValue() );
}
catch( e ) {
console.log( `Could not get the style number:`, e.message );
}
}
await browser.close();
} )();
以上代码将打印出:
SG1000
SG2000
SG3000
如何获取 data-Color 属性的值?例如:console.log( await ( await styleNumber.getAttribute( 'data-Color' ) ) ); // Blue
await page.evaluate(() => document.querySelector("span.styleNumber").getAttribute("data-Color") )
- Looi