Select 节点值 - puppeteer
Select node by value - puppeteer
我有一个简单的脚本,我试图在其中测试某些按钮的功能。在我的 html 里面有一个按钮:
<button> MyList </button>
在我的脚本中,我尝试了以下操作:
...
await page.type('button[value="MyList"]');
await page.click('button[value="MyList"]');
这是在黑暗中拍摄的,因为我找不到在 puppeteer 文档中按值 select 元素的方法。显然它找不到它,我得到了 error: 'No node found for selector: button[value="AccountList"]'
这是因为按钮的值不是MyList
。 MyList
是元素的文本内容,它不同于 value
这是一个属性。在 CSS 中,您不能通过文本内容查询元素。由于没有适用于您的用例的原生 CSS 选择器,您必须手动遍历 DOM 并查找匹配的节点。
jQuery 中实现了这样的选择器 -
:contains()
。我猜你可以为 Node.js.
使用一些类似的库
我有一个简单的脚本,我试图在其中测试某些按钮的功能。在我的 html 里面有一个按钮:
<button> MyList </button>
在我的脚本中,我尝试了以下操作:
...
await page.type('button[value="MyList"]');
await page.click('button[value="MyList"]');
这是在黑暗中拍摄的,因为我找不到在 puppeteer 文档中按值 select 元素的方法。显然它找不到它,我得到了 error: 'No node found for selector: button[value="AccountList"]'
这是因为按钮的值不是MyList
。 MyList
是元素的文本内容,它不同于 value
这是一个属性。在 CSS 中,您不能通过文本内容查询元素。由于没有适用于您的用例的原生 CSS 选择器,您必须手动遍历 DOM 并查找匹配的节点。
jQuery 中实现了这样的选择器 -
:contains()
。我猜你可以为 Node.js.