Security News
NIST Misses 2024 Deadline to Clear NVD Backlog
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
puppeteer-element2selector
Advanced tools
A utility to convert puppeteer ElementHandle to CSS Selector.
A utility to convert puppeteer ElementHandle to CSS Selector.
This library uses antonmedv/finder to turn ElementHandle into a unique CSS Selector. Allows developers to easily identify elements.
$ npm install puppeteer-element2selector
Below is a minimal sample code.
import puppeteer from 'puppeteer';
import { element2selector } from 'puppeteer-element2selector';
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://google.com');
const element = await page.$('input');
const selector = await element2selector(element!);
console.log(`Result: ${selector}`); // Result: #tophf > input:nth-child(1)
element2selector(element: ElementHandle, options?: Options): string
element
<ElementHandle>options
<Object>
seedMinLength
<number> Minimum length of levels in fining selector. Starts from 1
. For more robust selectors give this param value around 4-5 depending on depth of you DOM tree.optimizedMinLength
<number> Minimum length for optimising selector. Starts from 2
. For example selector body > div > div > p
can be optimized to body p
.threshold
<number> Max number of selectors to check before falling into nth-child
usage. Checking for uniqueness of selector is very costs operation, if you have DOM tree depth of 5, with 5 classes on each level, that gives you more than 3k selectors to check. finder uses two step approach so it's reaching this threshold in some cases twice. Default 1000
is good enough in most cases.See CHANGELOG.md
FAQs
A utility to convert puppeteer ElementHandle to CSS Selector.
The npm package puppeteer-element2selector receives a total of 299 weekly downloads. As such, puppeteer-element2selector popularity was classified as not popular.
We found that puppeteer-element2selector demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
Security News
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
Security News
The Socket Research team breaks down a malicious npm package targeting the legitimate DOMPurify library. It uses obfuscated code to hide that it is exfiltrating browser and crypto wallet data.