Product
Introducing Enhanced Alert Actions and Triage Functionality
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
puppeteer-element2selector
Advanced tools
Readme
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 481 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.
Product
Socket now supports four distinct alert actions instead of the previous two, and alert triaging allows users to override the actions taken for all individual alerts.
Security News
Polyfill.io has been serving malware for months via its CDN, after the project's open source maintainer sold the service to a company based in China.
Security News
OpenSSF is warning open source maintainers to stay vigilant against reputation farming on GitHub, where users artificially inflate their status by manipulating interactions on closed issues and PRs.