NEWScrapingAnt MCP for Claude Code, Cursor & Windsurf — try it free →
Skip to main content

18 posts tagged with "puppeteer"

View All Tags

Puppeteer Debugging and Troubleshooting - Best Practices

· 9 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

Puppeteer Debugging and Troubleshooting - Best Practices

Puppeteer is a powerful tool for automating web testing and scraping. However, it is still subject to problems and bugs like any other software.

It's crucial to have a well-thought-out plan for solving issues in place for times like these.

In this post, we'll explore some of the best practices for Puppeteer debugging and troubleshooting with Puppeteer.

Puppeteer vs. Selenium - Which Is Better? + Bonus

· 9 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

Puppeteer Vs. Selenium: Which Is Better?

With the increasing use of the internet worldwide, it is being implemented in all aspects of our daily lives. So using it efficiently and effectively becomes crucial and could be the difference between competitors and businesses. This is where the concept of Web Automation comes in. Today I shall teach you one of the most debated topics of web automation, Puppeteer vs. Selenium.

Let's begin!

How to Get All Text from a Webpage with Puppeteer

· 12 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

How to Get All Text from a Webpage with Puppeteer

Correction (2026-09-28)

The earlier article described DOM Range selection as Ctrl+A/copy-paste and claimed it could recover text from sites using display optimizations. The example performed neither keyboard input nor clipboard copying, and the general recovery claim was unsupported. This refresh compares actual text returned by five methods on a controlled fixture. Code and captured outputs.

For the readable text of an already rendered page, start with page.$eval('body', body => body.innerText). Use textContent when you explicitly want descendant text that can include hidden content and script/style source. If the HTML already contains the data, a converter such as html-to-text can work without a browser.

Those methods produce different outputs. Below, the browser sees three dynamically populated products, while the raw HTTP response contains empty product placeholders. The examples show how that difference affects text extraction, and when to keep structured records instead of flattening the page.

Web Scraping with Deno

· 10 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

Web Scraping with Deno

Dynamic languages are helpful tools for web scraping. Scripting allows users to rapidly tie together complex systems or libraries and express ideas without dealing with memory management or build systems.

JavaScript is the most popularly used dynamic language, operating on every device with a web browser, and Node.js as a JS runtime proved to be a very successful software platform. Due to design mistakes, it became hard to evolve with an existing user base, so Deno was born to resolve all the problems. Let's find out how to scrape the web and dynamic websites with Deno.

Web Scraping with Javascript (NodeJS)

· 13 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

Web Scraping with Javascript

Javascript (JS) becomes more popular as a programming language for web scraping. The whole domain becomes more demanded, and more technical specialists try to start data mining with a handy scripting language. Let's check out the main concepts of web scraping with Javascript and review the most popular libraries to improve data extraction flow.

6 Puppeteer Tricks to Avoid Detection and Make Web Scraping Easier

· 8 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

6 Puppeteer Tricks to Avoid Detection and Make Web Scraping Easier

As you know, Puppeteer is a high-level API to control headless Chrome, and it's probably one of the most popular web scraping tools on the Internet. The only problem is that an average web developer might be overloaded by tons of possible settings for a proper web scraping setup.

I want to share 6 handy and pretty obvious tricks that should help web developers to increase web scraper success rate, improve performance and avoid bans.

How to use rotating proxies with Puppeteer

· 4 min read
Oleg Kulyk
Co-Founder @ ScrapingAnt

How to use rotating proxies with Puppeteer?

Puppeteer is a high-level API to control headless Chrome. Most things that you can do manually in the browser can be done using Puppeteer, so it quickly became one of the most popular web scraping tool in Node.js and Python. Many developers use it for a single page applications (SPA) data extraction as it allows executing client-side Javascript. In this article, we are going to show how to set up a proxy in Puppeteer and how to spin up your own rotating proxy server.