I’ve been dealing with this nightmare for way too long. You build a solid Puppeteer script, deploy it, and then the website redesigns their login form or changes a couple of class names. Suddenly everything breaks and you’re back to square one debugging selectors and DOM changes.
The worst part? When you’re trying to get non-technical stakeholders to understand why their automation suddenly stopped working. “But it worked fine last month!”
I’ve been experimenting with AI-assisted workflow generation, and honestly it’s changing how I approach this. Instead of hand-coding Puppeteer scripts that are brittle by nature, I’ve been describing what I need in plain language and letting the AI generate the initial workflow. The thing that surprised me is how much more resilient these generated workflows end up being—they handle variations in DOM structure that my hand-coded selectors completely miss.
The even bigger win? When sites do change, I can just re-describe what needs to happen and get a fresh workflow in minutes instead of spending hours hunting through their new markup.
Has anyone else found a way to make your Puppeteer automations less dependent on exact selector matching? Or are you still fighting the same battle with manual updates every time a site redesigns?