Welcome to Decodo Blog!

Build knowledge on our solutions and streamline your workflows with step-by-step guides and expert tips.

A globe inside a rounded square

Webmaster Unblockers in 2026: Best Tools, Features & Buyer's Guide

Traditional proxies hide your IP, but struggle against anti-bot systems like Cloudflare, DataDome, and Akamai. Webmaster unblockers, also known as Site Unblockers, are managed request layers that take a URL and return rendered HTML. This guide explains how they work, when to pick 1 over a proxy or Web Scraping API, and which 5 tools stand out in 2026.
City, State & ASN Targeting

Datacenter & ISP Proxies Now Support City, State & ASN Targeting

City, state, and ASN targeting now works across datacenter and ISP proxies. Country-level targeting set the ceiling before, which pushed some geo-sensitive work to residential. That limit is gone. You can now target a specific metro, a US state, or a named network, all from your current setup.
Puppeteer in Python With Pyppeteer

Puppeteer in Python With Pyppeteer: Setup, Scraping, and 2026 Alternatives

Pyppeteer is an unofficial Python port of Puppeteer, the Node.js library that drives headless Chromium through the DevTools Protocol. It brings the same async model to Python for clicking, filling forms, waiting, and scraping JavaScript-heavy sites. It works, but it's no longer the 2026 default. This guide covers using it and when to switch to Playwright or nodriver.
Circle inside a rounded square, with a diagonal line running from the upper left to the lower right inside the circle.

Rank Tracker Getting Blocked? Why It Happens and How to Fix It

Rank tracker getting blocked is a frustrating problem that SEO teams will certainly run across while they’re collecting search engine rankings. They open their rank tracking dashboard only to find empty SERP positions, error logs, stale data, or unexplained errors, with the rank tracker getting blocked. A rank tracker monitors where each page appears in search engine results pages (SERPs), but today’s anti-bot systems will often stand in the way of the requests, interrupting them before position data can be collected. This guide shows how to diagnose and fix the issues: why blocks happen, how to identify them, and what to do to get valid data.
Crawlee Python

Crawlee Python: Complete Tutorial with Beautiful Soup, Playwright, and Proxies

Building reliable web scrapers can get complex and difficult to maintain, but Crawlee aims to simplify the process. As project needs grow, developers often encounter challenges that require multiple tools and configurations. Crawlee eliminates the need to build these configurations from scratch or migrate to a different tool mid-crawl, allowing you to focus on your scraping logic instead. In this guide, you'll learn how to scrape using Crawlee's 3 main crawler classes. We'll also explore the routing architecture, proxy integration with Decodo, and data storage.
Using Python Cloudscraper

Python Cloudscraper: Bypass Cloudflare Protection, Configure Proxies, and Handle Common Errors

Most Python scrapers that use Requests stop working as soon as a site is protected by Cloudflare. You might see a 403 error, get stuck in a redirect loop, or land on a "Just a moment..." page that never loads. Cloudscraper solves this problem without needing a headless browser. It builds on Requests, handles Cloudflare's JavaScript challenges, and gives you a working session. This guide explains how to set up Cloudscraper, configure proxies, choose an interpreter, handle CAPTCHAs, parse data, fix common errors, and understand the library's limitations. If you're new to Python scraping, start with the Python web scraping guide first.
Octagon crossed by a diagonal line from upper left to lower right, enclosed within a rounded square.

Block Requests in Puppeteer: A Practical Guide to Faster, Leaner Scraping

When you scrape the web with Puppeteer, you almost always pull in data you want alongside extras you don't need, like images, fonts, and tracking scripts that increase your request count, slow your pages, and drain your proxy bandwidth. In this guide, you'll learn how to block unnecessary requests with request interception and Chrome DevTools Protocol (CDP) so your scraper runs faster and scales more efficiently.
Icon with a button, shown as a vertical rectangle inside a rounded square.

Web Scraping with Kotlin: A Complete Guide with Jsoup, OkHttp, and Coroutines

Kotlin developers don't need to reach for Python to scrape. The JVM ecosystem covers the full stack: Jsoup for HTML parsing, OkHttp for HTTP requests, and coroutines for concurrency. This guide is for JVM and Android developers, as well as Java teams evaluating a migration. By the end of this piece, you'll have a working scraper that handles pagination, runs concurrent requests, integrates proxies, and exports data to CSV.
Browser window with code symbol inside a rounded square.

How to Parse HTML With Regex: A Practical Guide

Yes, you can parse HTML with regex – but only for specific tasks. Regex works well on flat targets like meta tags, sitemap URLs, or inline JSON-LD. But on nested or JavaScript-rendered markup, it fails silently, and you often don’t notice until the data is already wrong. This guide explains when regex works on HTML and when it breaks, includes working Python for the common extraction tasks (meta tags, JSON-LD, bulk extraction), and covers when to switch to a parser or get past a page that blocks you.

A geometric icon resembling a classical building: a triangle at the top like a roof, four evenly spaced vertical lines underneath resembling pillars, and a horizontal line at the bottom forming a base.

How To Use a Proxy in Puppeteer: Setup, Rotation, and Authentication

Puppeteer is a Node.js library that controls headless Chromium for browser automation and web scraping. Without proxies, every request goes out from your real IP, and on protected sites, that IP gets blocked fast. This guide covers every method for configuring, authenticating, and rotating proxies in Puppeteer, plus how to troubleshoot the failures you'll actually run into. Not familiar with how proxies work? Check out what a proxy server is before continuing.
Rounded square containing two horizontal rectangles stacked vertically; the top rectangle is shorter than the bottom one.

Scala Web Scraping: A Step-by-Step Guide for Developers

Scala web scraping fits naturally into JVM data pipelines, sharing types and libraries with your Spark, Akka, and Kafka code. This guide covers everything you need to ship a production scraper: environment setup, library selection, pagination, JavaScript rendering, anti-bot mitigation, and structured data export. Including when a managed scraping API is the smarter call.

Hermes Agent vs. OpenClaw

Hermes Agent vs. OpenClaw: Features, Scraping, and Proxy Setup Compared

If you're choosing Hermes Agent vs. OpenClaw, you're looking at the two most popular open-source agent frameworks of the year. Both run AI agents on their own, work inside your messaging apps, and call tools for you. This guide compares both of these agents' features, use cases, and possible third-party integrations.

A circle centered inside a squircle. Four additional squircles are attached to the circle at the top, bottom, left, and right sides.

Web Scraping With Node Fetch: A Practical Guide

Web scraping with Node Fetch offers a lightweight way to collect data in Node.js. By fetching raw HTML or JSON responses and pairing them with parsers like Cheerio, developers can transform unstructured pages into structured datasets. This Node Fetch tutorial explains request handling, response parsing, data extraction, proxy integration, and when managed scraping APIs are necessary to effectively bypass advanced anti-bot protections.
Diamond in a squircle

Watir Ruby: How To Automate Browsers and Scrape Web Data Step by Step

Watir is an open-source Ruby library for automating web browsers through code. Built on top of Selenium WebDriver, it wraps browser communication in a clean, Ruby-idiomatic API so you can focus on clicking buttons, filling forms, navigating pages, and extracting data without managing the underlying complexity. It's particularly useful for scraping JavaScript-heavy sites, automating form submissions, and collecting content that only appears after user interaction. This guide walks you through the full process, from setup to a working Watir scraper with proxy support.
Circle inside a house, that is inside a squircle

How Residential Proxies Work: A Technical Guide to Types, Networks & IP Sourcing

A residential proxy network routes your traffic through real ISP-assigned home IPs. But how routing actually happens, which proxy types you end up using, and how IPs are sourced have a much bigger impact on success rates. This guide breaks down how residential proxy networks work, including ASN-level routing, the different types of IPs, and the protocols they support.

Groovy Web Scraping

Groovy Web Scraping: HTTP Requests, DOM Parsing, and Headless Browsers

Thanks to blending Java’s massive ecosystem with a scripting-friendly syntax, Groovy works as a practical alternative for web scraping on the JVM. This guide shows you how to scrape websites with the HTTP Jodd client, parse HTML documents, manage sessions, utilize Jodd Lagarto and Jerry, and use Selenium to automate browsers. You'll also learn how to configure proxies for real-world, block-resistant scraping.
Claude Fable 5

How to Use Claude Fable 5 for Web Scraping

Web scraping with Claude Fable 5 turns slow data collection into a fast, mostly hands-off job. Fable 5 is Anthropic's most capable model (yet), and it can write scrapers, run them, repair its own errors, and return clean, structured data. This article walks through setup, real use cases, prompt patterns, costs, and the limits worth knowing.
No-Code Web Scraping With n8n

No-Code Web Scraping With n8n: Build Automated Data Workflows Without Writing Code

No-code web scraping with n8n lets you build automated scrapers on a visual canvas – no Python, no server, no terminal. You need prices tracked weekly or listings monitored daily, but can't code a scraper or run one. This guide shows you how to use only drag-and-drop nodes that run on schedule in the cloud.

© 2018-2026 decodo.com (formerly smartproxy.com). All Rights Reserved