簡體   English   中英

我的人偶操縱者不會在 zalando 上點擊我想要的尺寸按鈕,我該如何解決這個問題?

[英]My puppeteer won't click the size button that I want on zalando, how can I fix this?

1個

我正在使用 puppeteer 來創建一個 sneakerbot,一切都很順利,直到我想讓它選擇我想要的鞋碼。 當它不起作用時。 我做了與其他所有時間完全相同的事情。 我使用了命令:

enter code here

const puppeteer = require('puppeteer');

const product_url = "https://www.zalando.se/jordan-air-1-mid-hoega- 

運動鞋-armory-navywhiteblack-joc12n001-k12.html"

async function givePage(){
const browser = await puppeteer.launch({headless: false})
const page = await browser.newPage();
return page;
}

async function addToCart(page){
await page.goto(product_url)   
await page.waitForSelector("button[class='uc-btn uc-btn-primary']");
await page.click("button[class='uc-btn uc-btn-primary']", elem => 
elem.click());
await page.waitForSelector("button[class='DJxzzA u9KIT8 uEg2FS U_OhzR 
ZkIJC- Vn-7c- FCIprz heWLCX JIgPn9 LyRfpJ pxpHHp Md_Vex NN8L-8 GTG2H9 
MfX1a0 WCjo-q EKabf7 aX2-iv r9BRio mo6ZnF  PLvOOB']");
await page.click("button[class='DJxzzA u9KIT8 uEg2FS U_OhzR ZkIJC- 
Vn-7c- FCIprz heWLCX JIgPn9 LyRfpJ pxpHHp Md_Vex NN8L-8 GTG2H9 MfX1a0 
WCjo-q EKabf7 aX2-iv r9BRio mo6ZnF  PLvOOB']", elem => elem.click());
await page.waitForSelector("button[class='J1Rmt- _6-WsK3 Md_Vex 
Nk_Omi _MmCDa _0xLoFW FCIprz NN8L-8 _7Cm1F9 FxZV-M ovwSlD LyRfpJ 
K82if3 heWLCX mo6ZnF pVrzNP']");
await page.click("button[class='J1Rmt- _6-WsK3 Md_Vex Nk_Omi _MmCDa 
_0xLoFW FCIprz NN8L-8 _7Cm1F9 FxZV-M ovwSlD LyRfpJ K82if3 heWLCX 
mo6ZnF pVrzNP']", elem => elem.click());
}

async function checkout(){
var page = await givePage();
await addToCart(page);
}

checkout();

我原以為它會選擇所需的鞋碼,但一開始並沒有,我認為問題在於它無法選擇它,因為它無法渲染它,因為您必須向下滾動以找到 EU 49 尺碼,但是然后我試着將它設置為 headless true 這樣它就不必看到它了。 在這不起作用之后,我嘗試了一種鞋碼,您可以立即看到鞋碼,因此它可以挑選。 那也沒用。 那現在怎么辦???

我想出了解決這個問題的方法,我通常會編寫代碼

await page.selector("button=class'']"); await page.click("button=class'']");

現在我這樣做了: await page.evaluate(() => document.getElementsByClassName('')[0].click());

這就是我的問題的答案。 這取決於每台計算機都需要哪個命令,因為如果它很慢,使用我的第一個命令可能會遇到麻煩,而第二個命令可能會更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM