Javascript 木偶演员通过网站内容/元素进行检查
我需要检查网站中的元素以获取我的代码,但我不知道如何使用Node.JS上的puppeter来完成Javascript 木偶演员通过网站内容/元素进行检查,javascript,node.js,puppeteer,Javascript,Node.js,Puppeteer,我需要检查网站中的元素以获取我的代码,但我不知道如何使用Node.JS上的puppeter来完成 以下是我尝试的代码: if(page.content('input[data-kwimpalaid="1580983806648-1"]')) found = true if(found = true) console.log("I found it") if(found = false) console.log("I didn't found it") 所以我基本上需要的是,我有一个元素
以下是我尝试的代码:
if(page.content('input[data-kwimpalaid="1580983806648-1"]'))
found = true
if(found = true)
console.log("I found it")
if(found = false)
console.log("I didn't found it")
所以我基本上需要的是,我有一个元素ID以1到20结尾的网站,它可以是随机的,连续的。例如,它可以从1开始,然后有6个ID(1,2,3,4,5,6),也可以从5开始(5,6,7,8,9,10)。我想检查每个ID,如果它存在,则将“found”的值更改为true
。如果页面没有id 1,请尝试id 2、id 3、id 4等。。直到它找到该网站上存在的ID/类的输入
很快,我需要检查我使用的选择器元素是否存在于网站上(内容)。嗯,这个呢?在我头上
let found = false;
const allInputs = page.content('input[data-kwimpalaid]'); // Assuming an Array of elements here
for (let i = 1; i < 6; i++) {
if (allInputs.find((input) => input.dataset.kwimpalaid.startsWith(i))) {
found = true;
break;
}
}
if (found) {
console.log("I found it");
} else {
console.log("I didn't found it")
}
let found=false;
const allInputs=page.content('input[data kwimpalaid');//假设这里有一个元素数组
for(设i=1;i<6;i++){
if(allInputs.find((输入)=>input.dataset.kwimpalaid.startsWith(i))){
发现=真;
打破
}
}
如果(找到){
log(“我找到了”);
}否则{
log(“我没有找到它”)
}
因此,基本上扫描文档一次,以查找具有ID的所有元素。
然后分别查看每个元素。
for循环尊重您的偏好。
如果找到一个元素,Array.prototype.find将返回它。否则,其返回值为未定义
我在这里假设,木偶演员在浏览器中的行为类似于DOM。如果不是这样的话,其他人可能会纠正我。例如,比较是与
=
或==
进行的。从文档中可以看出,返回的承诺解析为整个HTML文本。您需要运行page.$(选择器)。然后(result)
来查找元素。上面的一个例子就是我正在尝试做的@克里斯,我会检查你告诉我的,如果有问题,我会告诉你。听起来你的问题是“给我密码”的问题,恐怕我们在这里不会这样做。我没有要求密码,我只是想更好地了解木偶师,我不确定这一行动是否可行。没有理由不喜欢我的问题,它可能会帮助很多刚接触木偶演员的人。我得到了错误“allInputs.find不是一个函数”
Hm,只是检查了page.content()
正在返回一个完整的字符串(我假设它类似于queryselectoral()
。您可以使用该方法吗?const allInputs=page.$$('input[data kwimpalaid]');