我如何使用 puppeteer 单击 div class?
How do i click in a div class using puppeteer?
我想点击一个按钮,但我只有 class
name, i'm trying to use page.click, but never work so i try to add waitForSelector and always gives me time out,我的代码很糟糕,我只是想学习更多关于创建新项目的知识。
this is the item i'm trying to get
Also can be this item
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
(async () => {
const browser = await puppeteer.launch({
headless: false,
product : "chrome",
});
const page = await browser.newPage();
await page.setViewport({
width:1920,
height:1080
})
try{
await page.goto('https://br.betano.com/login/')
await delay(1000)
await page.keyboard.type('*******')
await page.keyboard.press('Tab')
await page.keyboard.type('******')
await page.keyboard.press('Enter')
await delay(5000)
await page.goto('https://br.betano.com/casino/live/games/roleta-brasileira/444/tables/103910/')
await delay(2000)
await page.keyboard.press('Escape')
await delay(10000)
await page.waitForSelector('[class="header__more-games"]')
await page.click('[class="header__more-games"]')
}catch(err){
console.error(err)
}
})();
您始终可以使用 selector 到 select 特定元素并单击它,或者您也可以使用 Xpath。
您可以通过以下方式获得 Select 或
- Right-click 在浏览器 Devtools 中的元素上。
- Select复制,然后复制Select或
现在,将这些行替换为下面的行。
await page.waitForSelector('[class="header__more-games"]')
await page.click('[class="header__more-games"]')
确保将 Your Selector Here
替换为实际的 select 或者您在上述步骤中复制的内容。
await page.waitForSelector('Your Selector Here');
const buttonClick = await page.$("Your Selector Here");
await buttonClick.click();
我知道如何在 iframe
中使用 link,在我的例子中 link 总是相同的,所以我只得到 link并在另一个水龙头中打开。像这样:
await page2.goto('https://cachedownload-br.p-content.gambling-malta.com/live/?tableId=103910&game=rol&preferedmode=real&language=pt-br&advertiser=ptt/&clienttype=casino')
await page2.bringToFront()
await delay(15000)
const [button] = await page2.$x("//button[contains(., 'Ok')]");
if (button) {
await button.click();
}
我想点击一个按钮,但我只有 class name, i'm trying to use page.click, but never work so i try to add waitForSelector and always gives me time out,我的代码很糟糕,我只是想学习更多关于创建新项目的知识。
this is the item i'm trying to get
Also can be this item
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
(async () => {
const browser = await puppeteer.launch({
headless: false,
product : "chrome",
});
const page = await browser.newPage();
await page.setViewport({
width:1920,
height:1080
})
try{
await page.goto('https://br.betano.com/login/')
await delay(1000)
await page.keyboard.type('*******')
await page.keyboard.press('Tab')
await page.keyboard.type('******')
await page.keyboard.press('Enter')
await delay(5000)
await page.goto('https://br.betano.com/casino/live/games/roleta-brasileira/444/tables/103910/')
await delay(2000)
await page.keyboard.press('Escape')
await delay(10000)
await page.waitForSelector('[class="header__more-games"]')
await page.click('[class="header__more-games"]')
}catch(err){
console.error(err)
}
})();
您始终可以使用 selector 到 select 特定元素并单击它,或者您也可以使用 Xpath。
您可以通过以下方式获得 Select 或
- Right-click 在浏览器 Devtools 中的元素上。
- Select复制,然后复制Select或
现在,将这些行替换为下面的行。
await page.waitForSelector('[class="header__more-games"]')
await page.click('[class="header__more-games"]')
确保将 Your Selector Here
替换为实际的 select 或者您在上述步骤中复制的内容。
await page.waitForSelector('Your Selector Here');
const buttonClick = await page.$("Your Selector Here");
await buttonClick.click();
我知道如何在 iframe
中使用 link,在我的例子中 link 总是相同的,所以我只得到 link并在另一个水龙头中打开。像这样:
await page2.goto('https://cachedownload-br.p-content.gambling-malta.com/live/?tableId=103910&game=rol&preferedmode=real&language=pt-br&advertiser=ptt/&clienttype=casino')
await page2.bringToFront()
await delay(15000)
const [button] = await page2.$x("//button[contains(., 'Ok')]");
if (button) {
await button.click();
}