<h3 dir="auto">System info</h3>
<ul dir="auto">
<li>Playwright Version: [v1.32.1]</li>
<li>Operating System: [Windows 11]</li>
<li>Browser: [Chromium]</li>
<li>Other info: Python version : 3.7.4</li>
</ul>
<h3 dir="auto">Source code</h3>
<p dir="auto">`import asyncio<br>
import traceback</p>
<p dir="auto">from playwright.async_api import async_playwright</p>
<p dir="auto">async def scrape_hotels():<br>
async with async_playwright() as p:<br>
try:<br>
browser = await p.chromium.launch()<br>
page = await browser.new_page()<br>
await page.goto('<a href="https://www.skyscanner.com/hotels" rel="nofollow">https://www.skyscanner.com/hotels</a>')</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="        # Input location and check-in date
        await page.fill('#hotels-search-location', 'USA')
        await page.fill('#hotels-search-check-in', 'Tomorrow')

        # Submit form
        await asyncio.gather(
            page.click('#hotels-search button[type=&quot;submit&quot;]'),
            page.wait_for_selector('#hotels-search-results', state='visible')
        )

        # Extract hotel names
        hotel_names = await page.evaluate('''
            Array.from(document.querySelectorAll('.hotel-name')).map(e =&gt; e.textContent.trim())
        ''')
        print(hotel_names)

        await browser.close()
    except Exception as e:
        print(traceback.format_exc())"><pre class="notranslate"><code class="notranslate">        # Input location and check-in date
        await page.fill('#hotels-search-location', 'USA')
        await page.fill('#hotels-search-check-in', 'Tomorrow')

        # Submit form
        await asyncio.gather(
            page.click('#hotels-search button[type="submit"]'),
            page.wait_for_selector('#hotels-search-results', state='visible')
        )

        # Extract hotel names
        hotel_names = await page.evaluate('''
            Array.from(document.querySelectorAll('.hotel-name')).map(e =&gt; e.textContent.trim())
        ''')
        print(hotel_names)

        await browser.close()
    except Exception as e:
        print(traceback.format_exc())
</code></pre></div>
<p dir="auto">asyncio.run(scrape_hotels())<br>
`</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I provided exact source code that allows reproducing the issue locally.</li>
</ul>




<p dir="auto"><strong>Link to the GitHub repository with the repro</strong></p>
<p dir="auto">[https://github.com/your_profile/playwright_issue_title]</p>
<p dir="auto">or</p>
<p dir="auto"><strong>Config file</strong></p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="// playwright.config.ts
import { defineConfig, devices } from '@playwright/test';

export default defineConfig({
  projects: [
    {
      name: 'chromium',
      use: { ...devices['Desktop Chrome'], },
    },
});"><pre class="notranslate"><span class="pl-c">// playwright.config.ts</span>
<span class="pl-k">import</span> <span class="pl-kos">{</span> <span class="pl-s1">defineConfig</span><span class="pl-kos">,</span> <span class="pl-s1">devices</span> <span class="pl-kos">}</span> <span class="pl-k">from</span> <span class="pl-s">'@playwright/test'</span><span class="pl-kos">;</span>

<span class="pl-k">export</span> <span class="pl-k">default</span> <span class="pl-en">defineConfig</span><span class="pl-kos">(</span><span class="pl-kos">{</span>
  <span class="pl-c1">projects</span>: <span class="pl-kos">[</span>
    <span class="pl-kos">{</span>
      <span class="pl-c1">name</span>: <span class="pl-s">'chromium'</span><span class="pl-kos">,</span>
      <span class="pl-c1">use</span>: <span class="pl-kos">{</span> ...<span class="pl-s1">devices</span><span class="pl-kos">[</span><span class="pl-s">'Desktop Chrome'</span><span class="pl-kos">]</span><span class="pl-kos">,</span> <span class="pl-kos">}</span><span class="pl-kos">,</span>
    <span class="pl-kos">}</span><span class="pl-kos">,</span><span class="pl-kos"></span>
<span class="pl-kos">}</span><span class="pl-kos">)</span><span class="pl-kos">;</span></pre></div>
<p dir="auto"><strong>Test file (self-contained)</strong></p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="it('should check the box using setChecked', async ({ page }) =&gt; {
  await page.setContent(`&lt;input id='checkbox' type='checkbox'&gt;&lt;/input&gt;`);
  await page.getByRole('checkbox').check();
  await expect(page.getByRole('checkbox')).toBeChecked();
});"><pre class="notranslate"><span class="pl-en">it</span><span class="pl-kos">(</span><span class="pl-s">'should check the box using setChecked'</span><span class="pl-kos">,</span> <span class="pl-k">async</span> <span class="pl-kos">(</span><span class="pl-kos">{</span> page <span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-c1">=&gt;</span> <span class="pl-kos">{</span>
  <span class="pl-k">await</span> <span class="pl-s1">page</span><span class="pl-kos">.</span><span class="pl-en">setContent</span><span class="pl-kos">(</span><span class="pl-s">`&lt;input id='checkbox' type='checkbox'&gt;&lt;/input&gt;`</span><span class="pl-kos">)</span><span class="pl-kos">;</span>
  <span class="pl-k">await</span> <span class="pl-s1">page</span><span class="pl-kos">.</span><span class="pl-en">getByRole</span><span class="pl-kos">(</span><span class="pl-s">'checkbox'</span><span class="pl-kos">)</span><span class="pl-kos">.</span><span class="pl-en">check</span><span class="pl-kos">(</span><span class="pl-kos">)</span><span class="pl-kos">;</span>
  <span class="pl-k">await</span> <span class="pl-en">expect</span><span class="pl-kos">(</span><span class="pl-s1">page</span><span class="pl-kos">.</span><span class="pl-en">getByRole</span><span class="pl-kos">(</span><span class="pl-s">'checkbox'</span><span class="pl-kos">)</span><span class="pl-kos">)</span><span class="pl-kos">.</span><span class="pl-en">toBeChecked</span><span class="pl-kos">(</span><span class="pl-kos">)</span><span class="pl-kos">;</span>
<span class="pl-kos">}</span><span class="pl-kos">)</span><span class="pl-kos">;</span></pre></div>
<p dir="auto"><strong>Steps</strong></p>
<ul dir="auto">
<li>[Run the test]</li>
<li>[...]</li>
</ul>
<p dir="auto"><strong>Expected</strong><br>
It should load the webpage and search for the css input selector on input webpage</p>
<p dir="auto">[Describe expected behavior]</p>
<p dir="auto"><strong>Actual</strong><br>
It is always giving this greenlet import error, DLL not found, I have tried the official document aysnc and sync apis as well to load any webpage but it always giving same error, Please look into this issue asap. This is my second attempt to learn this wonderful library and use it in my day to day complex data scraping tasks.</p>
<p dir="auto">[Describe actual behavior]</p>
<p dir="auto">On localhost, we're testing a project with self-signed certificates. Running codegen from cli works fine:</p>
<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="npx playwright codegen --ignore-https-errors"><pre class="notranslate">npx playwright codegen --ignore-https-errors</pre></div>
<p dir="auto">Running codegen with "Record new" from vscode yields to:</p>
<p dir="auto"><a target="_blank" rel="noopener noreferrer" href="https://user-images.githubusercontent.com/750793/238667758-143e624a-51d5-4314-a9c5-38e952c966e8.png"><img src="https://user-images.githubusercontent.com/750793/238667758-143e624a-51d5-4314-a9c5-38e952c966e8.png" alt="grafik" style="max-width: 100%;"></a></p>
<p dir="auto">How can I configure the vscode plugin to ignore HTTPS errors?</p>