<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Playwright on Web Scraping Python</title>
    <link>https://webscrapingpython.com/tags/playwright/</link>
    <description>Recent content in Playwright on Web Scraping Python</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 14 Apr 2026 10:00:00 +0200</lastBuildDate>
    <atom:link href="https://webscrapingpython.com/tags/playwright/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Playwright Stealth and Single-Page Apps</title>
      <link>https://webscrapingpython.com/posts/playwright-stealth-spa/</link>
      <pubDate>Tue, 14 Apr 2026 10:00:00 +0200</pubDate>
      <guid>https://webscrapingpython.com/posts/playwright-stealth-spa/</guid>
      <description>&lt;p&gt;Plain Playwright fails on sites with serious bot detection. The problem isn&amp;rsquo;t Playwright — it&amp;rsquo;s the tells that a default&#xA;Chromium automation leaves everywhere.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Playwright for JavaScript-Rendered Pages</title>
      <link>https://webscrapingpython.com/posts/playwright-javascript-rendered-sites/</link>
      <pubDate>Tue, 15 Jul 2025 10:00:00 +0200</pubDate>
      <guid>https://webscrapingpython.com/posts/playwright-javascript-rendered-sites/</guid>
      <description>&lt;p&gt;If &lt;code&gt;requests.get(url).text&lt;/code&gt; returns an empty shell with no data, the site renders in the browser. Playwright is the&#xA;cleanest way to scrape it.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
