You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🎭 <btranslate="no">Stealthy Playwright Mode</b> is a special mode of <btranslate="no">SeleniumBase</b> that launches <ahref="https://github.com/microsoft/playwright-python">Playwright</a> from <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md"translate="no">SeleniumBase CDP Mode</a> in order to grant <btranslate="no">Playwright</b> new stealth features, such as the ability to click CAPTCHA checkboxes successfully. <btranslate="no">Playwright</b> uses <code>connect_over_cdp()</code> to attach itself onto an existing <btranslate="no">SeleniumBase</b> session via the <code>remote-debugging-port</code>. From here, APIs of both frameworks can be used, giving you a hybrid approach that delivers the best experience of both worlds.
5
+
🎭 <btranslate="no">Stealthy Playwright Mode</b> is a subset of **[SeleniumBase CDP Mode](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md)** that launches **[Playwright](https://github.com/microsoft/playwright-python)** from an existing <btranslate="no">SeleniumBase</b> browser to make <spantranslate="no">Playwright</span> stealthy (for bypassing bot-detection). <spantranslate="no">Playwright</span> uses <code><b>connect_over_cdp()</b></code> to attach itself onto an existing <spantranslate="no">SeleniumBase</span> session via the <code>remote-debugging-port</code>. From here, APIs of both frameworks can be used together.
6
6
7
7
--------
8
8
@@ -138,4 +138,4 @@ For more examples, see [examples/cdp_mode/playwright](https://github.com/seleniu
Copy file name to clipboardExpand all lines: help_docs/js_package_manager.md
+11-11Lines changed: 11 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
<h2><imgsrc="https://seleniumbase.github.io/img/logo6.png"title="SeleniumBase"width="32"> JS Package Manager and Code Generators</h2>
4
4
5
-
<h3>🕹️ SeleniumBase lets you load JavaScript packages from any CDN link into any website via Python.</h3>
5
+
<h3>❇️ SeleniumBase lets you load JavaScript packages from any CDN link into any website via Python.</h3>
6
6
7
7
<b>🎨 The following SeleniumBase solutions utilize this feature:</b>
8
8
@@ -29,7 +29,7 @@ cd examples/tour_examples
29
29
pytest maps_introjs_tour.py --interval=1
30
30
```
31
31
32
-
<p>🕹️ SeleniumBase includes powerful JS code generators for converting Python into JavaScript for using the supported JS packages. A few lines of Python in your tests might generate hundreds of lines of JavaScript.</p>
32
+
<p>❇️ SeleniumBase includes powerful JS code generators for converting Python into JavaScript for using the supported JS packages. A few lines of Python in your tests might generate hundreds of lines of JavaScript.</p>
33
33
34
34
<p>🗺️ Here is some tour code in Python from <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/tour_examples/maps_introjs_tour.py">maps_introjs_tour.py</a> that expands into a lot of JavaScript.</p>
<p><div>🕹️ For existing features, SeleniumBase already takes care of loading all the necessary JS and CSS files into the web browser. To load other packages, here are a few useful methods that you should know about:</div></p>
47
+
<p><div>❇️ For existing features, SeleniumBase already takes care of loading all the necessary JS and CSS files into the web browser. To load other packages, here are a few useful methods that you should know about:</div></p>
48
48
49
49
```python
50
50
self.add_js_link(js_link)
51
51
```
52
52
53
-
<p><div>🕹️ This example loads the <ahref="https://introjs.com/">IntroJS</a> JavaScript library:</div></p>
53
+
<p><div>❇️ This example loads the <ahref="https://introjs.com/">IntroJS</a> JavaScript library:</div></p>
<div>🕹️ You can load any JS package this way as long as you know the URL.</div>
59
+
<div>❇️ You can load any JS package this way as long as you know the URL.</div>
60
60
61
-
<p>🕹️ If you're wondering how SeleniumBase does this, here's the full Python code from <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/fixtures/js_utils.py">js_utils.py</a>, which uses WebDriver's <code>execute_script()</code> method for making JS calls after escaping quotes with backslashes as needed:</p>
61
+
<p>❇️ If you're wondering how SeleniumBase does this, here's the full Python code from <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/fixtures/js_utils.py">js_utils.py</a>, which uses WebDriver's <code>execute_script()</code> method for making JS calls after escaping quotes with backslashes as needed:</p>
<div>🕹️ Website tours are just one of the many uses of the JS Package Manager.</div>
112
+
<div>❇️ Website tours are just one of the many uses of the JS Package Manager.</div>
113
113
<p><div>🛂 The following example shows the <ahref="https://github.com/craftpip/jquery-confirm">JqueryConfirm</a> package loaded into a website for creating fancy dialog boxes:</div></p>
<p><div>(Example from the <ahref="https://seleniumbase.io/examples/dialog_boxes/ReadMe/">Dialog Boxes ReadMe</a>)</div></p>
129
129
130
-
<div>🕹️ Since packages are loaded directly from a CDN link, you won't need other package managers like NPM, Bower, or Yarn to get the packages that you need into the websites that you want.</div>
130
+
<div>❇️ Since packages are loaded directly from a CDN link, you won't need other package managers like NPM, Bower, or Yarn to get the packages that you need into the websites that you want.</div>
🌟 SeleniumBase console scripts can do many things, such as downloading web drivers, creating test directories with config files, activating the SeleniumBase Recorder, launching the SeleniumBase Commander, translating tests into other languages, running a Selenium Grid, and more.
0 commit comments