Я работаю над проектом по созданию файла с селекторами css для последующего использования в сценариях автоматизации с использованием кукловода. Для извлечения уникального селектора css я решил использовать библиотеку "css -selector-generator ". Поскольку это пакет узлов, я использовал browserify , чтобы связать пакет для внедрения во время выполнения. Я не понимаю, что я делаю неправильно, но в этом случае ничего не работает. Я хотел получить селекторы css для элемента, когда пользователь щелкает по нему.
Я использую приведенный ниже код для извлечения и отображения селектора css, однако ошибка, которую я получаю в консоли браузера, составляет
**"Uncaught ReferenceError: getCssSelector is not defined
at HTMLBodyElement.<anonymous> (VM28 __puppeteer_evaluation_script__:6)"**
Я использую следующий код:
let puppeteer = require('puppeteer');
let nav = async function(){
let browser = await puppeteer.launch({
headless:false
})
let handle;
let page = await browser.newPage();
await page.goto('https://google.com');
await page.addScriptTag({path:'./bundle.js'})
await page.evaluate(async ()=>{
await document.body.addEventListener('click', function (event) {
// get reference to the element user clicked on
const element = event.target;
// get unique CSS selector for that element
const selector = getCssSelector(element);
// do whatever you need to do with that selector
console.log('selector', selector);
});
})
}
nav();
Любая помощь здесь будет принята с благодарностью. Также предложите, если возможно извлечь эти селекторы из контекста браузера в контекст узла. Если да, то как это сделать.
Заранее большое спасибо.