seleniumbase 4.30.1__tar.gz → 4.30.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/PKG-INFO +6 -4
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/README.md +3 -1
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/thank_you.md +18 -13
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/requirements.txt +2 -2
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/__version__.py +1 -1
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/browser_launcher.py +50 -42
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/PKG-INFO +6 -4
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/requires.txt +2 -2
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/setup.py +3 -3
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/Workflows.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/workflows/pages.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/workflows/python-nightly-mac.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/workflows/python-nightly-ubuntu.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/workflows/python-nightly-windows.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.github/workflows/python-package.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/.gitignore +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/CHANGELOG.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/CNAME +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/CODE_OF_CONDUCT.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/CONTRIBUTING.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/Dockerfile +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/LICENSE +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/MANIFEST.in +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/SECURITY.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/_config.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/azure-pipelines.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/basic_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/behave.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/behave.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/calculator.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/environment.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/fail_page.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/realworld.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/calculator.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/fail_page.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/imported.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/swag_labs.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/base_test_case.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/boilerplate_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/classic_obj_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/page_objects.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/file_parsing/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/file_parsing/parse_files.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/file_parsing/qa_login_example.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/file_parsing/staging_login_example.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/google_objects.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/google_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/sb_swag_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/swag_labs_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/test_page_objects.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/sb_fixture_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/mac_cap_file.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/sample_cap_file_BS.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/sample_cap_file_SL.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/selenoid_cap_file.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/capabilities/win10_cap_file.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/basic_test.MyTestClass.test_basics.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/my_first_test.MyTestClass.test_swag_labs.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/shadow_root_test.ShadowRootTest.test_shadow_root.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/test_assert_elements.ListAssertTests.test_assert_list_of_elements.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/test_calculator.CalculatorTests.test_6_times_7_plus_12_equals_54.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/test_demo_site.DemoSiteTests.test_demo_site.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/test_login.SwagLabsLoginTests.test_swag_labs_login.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_plans/test_mfa_login.TestMFALogin.test_mfa_login.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/case_summary.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/chart_presentation.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/my_chart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/pie_charts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/test_area_chart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/test_display_chart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/test_line_chart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/test_multi_series.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/chart_maker/test_save_chart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/coffee_cart_tests.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/custom_settings.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/desktop_apps/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/desktop_apps/recorder.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/dialog_boxes/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/dialog_boxes/dialog_box_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/edge_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/example_config.cfg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/example_logs/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/example_logs/basic_test_info.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/example_logs/page_source.html +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/example_logs/screenshot.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/github_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/gui_test_runner.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/hack_the_planet.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/handle_alert_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/iframe_tests.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/locale_code_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/master_qa/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/master_qa/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/master_qa/basic_masterqa_test_0.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/master_qa/masterqa_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/master_qa/pytest.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/example_spec.js +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/example_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/input_spec.js +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/input_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/mat_paginator_spec.js +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/protractor/mat_paginator_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/flaky_messy_raw.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/long_messy_raw.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/messy_raw.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/pytest.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/refined_raw.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/migration/raw_selenium/simple_sbase.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/my_first_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/nth_child_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/demo_page.html +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/load_html_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/test_demo_page.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/test_handle_alerts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/test_request_fixture.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/offline_examples/test_user_agent.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/old_wordle_script.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/parameterized_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/performance_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/core_presentation.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/edge_presentation.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/fundamentals.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/my_presentation.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/presenter/py_virtual_envs.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/proxy_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/pytest.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/rate_limiting_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_call.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_driver_context.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_file_call.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_main_call.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_parameter_script.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_sb.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_test_scripts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/raw_uc_mode.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/setup.cfg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/shadow_root_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/swag_labs_user_tests.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_apple_site.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_assert_elements.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_calculator.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_canvas.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_checkboxes.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_chinese_pdf.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_chromedriver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_coffee_cart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_console_logging.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_contains_selector.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_cycle_elements.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_decryption.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_deferred_asserts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_demo_site.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_detect_404s.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_docs_site.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_double_click.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_download_files.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_download_images.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_drag_and_drop.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_error_page.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_event_firing.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_fail.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_geolocation.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_get_coffee.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_get_locale_code.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_get_pdf_text.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_get_user_agent.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_hack_search.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_image_saving.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_inspect_html.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_login.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_markers.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_mfa_login.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_multiple_drivers.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_null.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_override_driver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_override_sb_fixture.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_parse_soup.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_pdf_asserts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_pytest_parametrize.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_repeat_tests.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_request_sb_fixture.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_save_screenshots.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_sb_fixture.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_scrape_bing.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_select_options.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_shadow_dom.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_show_file_choosers.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_skype_site.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_suite.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_swag_labs.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_tinymce.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_todomvc.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_url_asserts.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_usefixtures.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_verify_chromedriver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_window_switching.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_xfail.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/test_xkcd.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/time_limit_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/bootstrap_google_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/bootstrap_xkcd_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/driverjs_maps_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/google_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/hopscotch_google_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/introjs_google_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/maps_introjs_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/octocat_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/shepherd_google_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/tour_examples/xkcd_tour.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/chinese_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/dutch_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/english_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/french_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/italian_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/japanese_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/korean_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/portuguese_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/pytest.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/russian_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/translations/spanish_test_1.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/uc_cdp_events.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/unit_tests/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/unit_tests/verify_framework.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/upgrade_chromedriver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/upload_file_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/user_agent_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/verify_undetected.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/layout_test.VisualLayoutTests.test_applitools_layout_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/python_home_test.VisualLayoutTests.test_python_home_layout_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_applitools_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/test_layout_fail.VisualLayoutFailureTests.test_xkcd_logo_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/test_layout_fail.VisualLayout_FixtureTests.test_python_home_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/case_plans/xkcd_visual_test.VisualLayoutTests.test_xkcd_layout_change.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/layout_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/python_home_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/test_layout_fail.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/visual_testing/xkcd_visual_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/wordle_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/xpath_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/youtube_search_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/behave_gui.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/case_plans.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/chinese.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/commander.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/customizing_test_runs.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/demo_mode.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/desired_capabilities.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/features_list.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/handling_iframes.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/happy_customers.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/hidden_files_info.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/how_it_works.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/html_inspector.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/install.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/install_python_pip_git.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/js_package_manager.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/locale_codes.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/method_summary.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/mobile_testing.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/mysql_installation.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/recorder_mode.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/shadow_dom.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/syntax_formats.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/translations.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/useful_grep_commands.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/using_safari_driver.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/verify_webdriver.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/virtualenv_instructions.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/help_docs/webdriver_installation.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/install.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/azure/azure_pipelines/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/azure/jenkins/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/behave.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/behave.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/calculator.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/environment.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/fail_page.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/realworld.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/steps/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/steps/calculator.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/steps/fail_page.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/steps/real_world.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/steps/swag_labs.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/behave/features/swag_labs.feature +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/brython/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/brython/index.html +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/brython/index.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/brython/library.html +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/docker/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/docker/docker-entrypoint.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/docker/run_docker_test_in_chrome.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/github/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/github/workflows/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/github/workflows/extras.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/google_cloud/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/katalon/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/linux/Linuxfile.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/linux/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/linux/Xvfb_launcher.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/linux/jenkins_permissions.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/linux/tomcat_permissions.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/index.html +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/my_first_test.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/npm-shrinkwrap.json +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/package.json +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/server.js +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/node_js/test_demo_site.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/integrations/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs.yml +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/ReadMe.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/docs_instructions.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/dash_pie.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/dash_pie_2.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/dash_pie_3.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/favicon.ico +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/grad_logo.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/green_icon.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/green_logo.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/green_logo2.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/green_logo3.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo3.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo3a.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo3b.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo3c.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo4.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo5.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo6.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/logo7.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/sb_icon.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/sb_logo_10.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/sb_logo_7.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/side_by_side.png +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/social/share_facebook.svg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/social/share_github.svg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/social/share_gitter.svg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/social/share_instagram.svg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/img/social/share_twitter.svg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/index.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/mkdocs_build/prepare.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/pytest.ini +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/requirements.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/sbase/ReadMe.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/sbase/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/sbase/__main__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/sbase/steps.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/__main__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/behave/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/behave/behave_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/behave/behave_sb.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/behave/steps.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/decorators.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/encryption.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/exceptions.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/obfuscate.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/common/unobfuscate.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/config/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/config/ad_block_list.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/config/proxy_list.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/config/settings.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/logo_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/rich_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/run.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_behave_gui.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_caseplans.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_commander.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_install.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_mkchart.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_mkdir.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_mkfile.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_mkpres.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_mkrec.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_objectify.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_print.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/console_scripts/sb_recorder.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/application_manager.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/capabilities_parser.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/colored_traceback.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/create_db_tables.sql +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/detect_b_ver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/download_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/encoded_images.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/jqc_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/log_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/mysql.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/proxy_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/recorder_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/report_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/s3_manager.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/sb_driver.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/session_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/settings_parser.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/style_sheet.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/testcase_manager.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/tour_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/core/visual_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/drivers/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/drivers/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/ad_block.zip +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/disable_csp.zip +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/recorder.zip +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/extensions/sbase_ext.zip +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/base_case.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/constants.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/css_to_xpath.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/errors.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/js_utils.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/page_actions.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/page_utils.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/shared_utils.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/unittest_helper.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/words.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/fixtures/xpath_to_css.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/js_code/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/js_code/active_css_js.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/js_code/live_js.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/js_code/recorder_js.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/masterqa/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/masterqa/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/masterqa/master_qa.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/base_plugin.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/basic_test_info.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/db_reporting_plugin.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/driver_manager.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/page_source.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/pytest_plugin.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/s3_logging_plugin.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/sb_manager.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/screen_shots.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/plugins/selenium_plugin.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/resources/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/resources/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/resources/favicon.ico +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/chinese.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/dutch.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/french.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/italian.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/japanese.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/korean.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/master_dict.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/portuguese.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/russian.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/spanish.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/translate/translator.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/cdp.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/dprocess.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/options.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/patcher.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/reactor.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/undetected/webelement.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/download_selenium_server.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/font_color +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/grid-hub +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/grid-node +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/grid_hub.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/grid_node.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/register-grid-node.bat +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/register-grid-node.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/start-grid-hub.bat +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_grid/start-grid-hub.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_ide/ReadMe.md +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_ide/__init__.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase/utilities/selenium_ide/convert_ide.py +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/SOURCES.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/dependency_links.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/entry_points.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/seleniumbase.egg-info/top_level.txt +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/setup.cfg +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/virtualenv_install.sh +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/win_install.bat +0 -0
- {seleniumbase-4.30.1 → seleniumbase-4.30.3}/win_virtualenv.bat +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.30.
|
3
|
+
Version: 4.30.3
|
4
4
|
Summary: A complete web automation framework for end-to-end testing.
|
5
5
|
Home-page: https://github.com/seleniumbase/SeleniumBase
|
6
6
|
Author: Michael Mintz
|
@@ -158,9 +158,9 @@ Provides-Extra: pdfminer
|
|
158
158
|
Requires-Dist: pdfminer.six==20221105; python_version < "3.8" and extra == "pdfminer"
|
159
159
|
Requires-Dist: pdfminer.six==20240706; python_version >= "3.8" and extra == "pdfminer"
|
160
160
|
Requires-Dist: cryptography==39.0.2; python_version < "3.9" and extra == "pdfminer"
|
161
|
-
Requires-Dist: cryptography==43.0.
|
161
|
+
Requires-Dist: cryptography==43.0.1; python_version >= "3.9" and extra == "pdfminer"
|
162
162
|
Requires-Dist: cffi==1.15.1; python_version < "3.8" and extra == "pdfminer"
|
163
|
-
Requires-Dist: cffi==1.17.
|
163
|
+
Requires-Dist: cffi==1.17.1; python_version >= "3.8" and extra == "pdfminer"
|
164
164
|
Requires-Dist: pycparser==2.22; extra == "pdfminer"
|
165
165
|
Provides-Extra: pillow
|
166
166
|
Requires-Dist: Pillow==9.5.0; python_version < "3.8" and extra == "pillow"
|
@@ -239,13 +239,15 @@ Requires-Dist: zstandard==0.23.0; extra == "selenium-wire"
|
|
239
239
|
<br />
|
240
240
|
</p>
|
241
241
|
|
242
|
+
<p>SeleniumBase is the professional toolkit for web automation activities. Built for testing websites, bypassing CAPTCHAs, enhancing productivity, completing tasks, and scaling your business.</p>
|
243
|
+
|
242
244
|
--------
|
243
245
|
|
244
246
|
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/** folder](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
|
245
247
|
|
246
248
|
👤 Note that <span translate="no">SeleniumBase</span> <a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md"><b>UC Mode</b> (Stealth Mode) has its own ReadMe</a>.
|
247
249
|
|
248
|
-
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover
|
250
|
+
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover, collect, and run tests automatically).
|
249
251
|
|
250
252
|
<p align="left">📗 Here's <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py">my_first_test.py</a>, which tests login, shopping, and checkout:</p>
|
251
253
|
|
@@ -54,13 +54,15 @@
|
|
54
54
|
<br />
|
55
55
|
</p>
|
56
56
|
|
57
|
+
<p>SeleniumBase is the professional toolkit for web automation activities. Built for testing websites, bypassing CAPTCHAs, enhancing productivity, completing tasks, and scaling your business.</p>
|
58
|
+
|
57
59
|
--------
|
58
60
|
|
59
61
|
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/** folder](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
|
60
62
|
|
61
63
|
👤 Note that <span translate="no">SeleniumBase</span> <a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md"><b>UC Mode</b> (Stealth Mode) has its own ReadMe</a>.
|
62
64
|
|
63
|
-
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover
|
65
|
+
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover, collect, and run tests automatically).
|
64
66
|
|
65
67
|
<p align="left">📗 Here's <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py">my_first_test.py</a>, which tests login, shopping, and checkout:</p>
|
66
68
|
|
@@ -1,31 +1,36 @@
|
|
1
1
|
<!-- SeleniumBase Docs -->
|
2
2
|
|
3
|
-
|
3
|
+
<a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/cdn/img/super_logo_sb.png" title="SeleniumBase" width="290" /></a>
|
4
4
|
|
5
|
-
|
5
|
+
|
6
|
+
<h3>🛬🛫 Thank you for flying with SeleniumBase! 🦅🚀</h3>
|
6
7
|
|
7
8
|
--------
|
8
9
|
|
9
|
-
<p><div><b
|
10
|
+
<p><div><b>🛩️ SeleniumBase Playlist on YouTube:</b></div></p>
|
11
|
+
|
12
|
+
<p><span><a href="https://www.youtube.com/playlist?list=PLp9uKicxkBc5UIlGi2BuE3aWC7JyXpD3m"><img src="https://seleniumbase.github.io/cdn/img/youtube.png" title="SeleniumBase Playlist on YouTube" alt="SeleniumBase Playlist on YouTube" width="76" /></a></span></p>
|
10
13
|
|
11
|
-
<p><
|
14
|
+
<p><div><b>🛩️ SeleniumBase GitHub Home Page:</b></div></p>
|
12
15
|
|
13
|
-
<p><div><
|
16
|
+
<p><div><span><a href="https://github.com/seleniumbase/SeleniumBase"><img src="https://seleniumbase.github.io/img/social/share_github.svg" title="SeleniumBase on GitHub" alt="SeleniumBase on GitHub" width="74" /></a></span></div></p>
|
14
17
|
|
15
|
-
<p><div><
|
18
|
+
<p><div><b>🛩️ SeleniumBase Discord Channel:</b></div></p>
|
16
19
|
|
17
|
-
<p><
|
20
|
+
<p><span><a href="https://discord.gg/EdhQTn3EyE"><img src="https://seleniumbase.github.io/other/discord_icon.png" title="SeleniumBase on Discord" alt="SeleniumBase on Discord" width="72" /></a></span></p>
|
18
21
|
|
19
|
-
<p><
|
22
|
+
<p><div><b>🛩️ SeleniumBase Gitter Chat:</b></div></p>
|
23
|
+
|
24
|
+
<p><span><a href="https://gitter.im/seleniumbase/SeleniumBase"><img src="https://seleniumbase.github.io/img/social/share_gitter.svg" title="SeleniumBase on Gitter" alt="SeleniumBase on Gitter" width="56" /></a></span></p>
|
20
25
|
|
21
26
|
<p><div><b>Other Social Media Links:</b></div></p>
|
22
27
|
|
23
|
-
|
24
|
-
<span><a href="https://www.facebook.com/SeleniumBase"><img src="https://seleniumbase.github.io/img/social/share_facebook.svg" title="SeleniumBase on Facebook" alt="SeleniumBase on Facebook" width="
|
25
|
-
<span><a href="https://twitter.com/seleniumbase"><img src="https://seleniumbase.github.io/img/social/share_twitter.svg" title="SeleniumBase on Twitter" alt="SeleniumBase on Twitter" width="
|
26
|
-
<span><a href="https://instagram.com/seleniumbase"><img src="https://seleniumbase.github.io/img/social/share_instagram.svg" title="SeleniumBase on Instagram" alt="SeleniumBase on Instagram" width="
|
28
|
+
<div></p>
|
29
|
+
<span><a href="https://www.facebook.com/SeleniumBase"><img src="https://seleniumbase.github.io/img/social/share_facebook.svg" title="SeleniumBase on Facebook" alt="SeleniumBase on Facebook" width="50" /></a></span>
|
30
|
+
<span><a href="https://twitter.com/seleniumbase"><img src="https://seleniumbase.github.io/img/social/share_twitter.svg" title="SeleniumBase on Twitter" alt="SeleniumBase on Twitter" width="50" /></a></span>
|
31
|
+
<span><a href="https://instagram.com/seleniumbase"><img src="https://seleniumbase.github.io/img/social/share_instagram.svg" title="SeleniumBase on Instagram" alt="SeleniumBase on Instagram" width="42" /></a></span>
|
27
32
|
</div></p>
|
28
33
|
|
29
34
|
--------
|
30
35
|
|
31
|
-
<p><div><a
|
36
|
+
<p><div><a href="https://github.com/seleniumbase/SeleniumBase/"><img src="https://seleniumbase.github.io/img/sb_logo_10.png" alt="SeleniumBase" width="260"></a></div></p>
|
@@ -11,7 +11,7 @@ MarkupSafe==2.1.5
|
|
11
11
|
Jinja2==3.1.4
|
12
12
|
click==8.1.7
|
13
13
|
ghp-import==2.1.0
|
14
|
-
watchdog==5.0.
|
14
|
+
watchdog==5.0.2
|
15
15
|
cairocffi==1.7.1
|
16
16
|
pathspec==0.12.1
|
17
17
|
Babel==2.16.0
|
@@ -20,7 +20,7 @@ lxml==5.3.0
|
|
20
20
|
pyquery==2.0.1
|
21
21
|
readtime==3.0.0
|
22
22
|
mkdocs==1.6.1
|
23
|
-
mkdocs-material==9.5.
|
23
|
+
mkdocs-material==9.5.34
|
24
24
|
mkdocs-exclude-search==0.6.6
|
25
25
|
mkdocs-simple-hooks==0.1.5
|
26
26
|
mkdocs-material-extensions==1.3.1
|
@@ -1,2 +1,2 @@
|
|
1
1
|
# seleniumbase package
|
2
|
-
__version__ = "4.30.
|
2
|
+
__version__ = "4.30.3"
|
@@ -340,17 +340,19 @@ def find_edgedriver_version_to_use(use_version, driver_version):
|
|
340
340
|
return use_version
|
341
341
|
|
342
342
|
|
343
|
-
def
|
343
|
+
def has_captcha(text):
|
344
344
|
if (
|
345
345
|
"<title>403 Forbidden</title>" in text
|
346
346
|
or "Permission Denied</title>" in text
|
347
347
|
or 'id="challenge-error-text"' in text
|
348
348
|
or "<title>Just a moment..." in text
|
349
349
|
or 'action="/?__cf_chl_f_tk' in text
|
350
|
+
or 'id="challenge-widget-' in text
|
350
351
|
or 'src="chromedriver.js"' in text
|
351
352
|
or 'class="g-recaptcha"' in text
|
352
353
|
or 'content="Pixelscan"' in text
|
353
354
|
or 'id="challenge-form"' in text
|
355
|
+
or "/challenge-platform" in text
|
354
356
|
or "window._cf_chl_opt" in text
|
355
357
|
or "/recaptcha/api.js" in text
|
356
358
|
or "/turnstile/" in text
|
@@ -377,7 +379,7 @@ def uc_special_open_if_cf(
|
|
377
379
|
status_str.startswith("3")
|
378
380
|
or status_str.startswith("4")
|
379
381
|
or status_str.startswith("5")
|
380
|
-
or
|
382
|
+
or has_captcha(req_get.text)
|
381
383
|
):
|
382
384
|
special = True
|
383
385
|
if status_str == "403" or status_str == "429":
|
@@ -763,6 +765,8 @@ def _on_a_cf_turnstile_page(driver):
|
|
763
765
|
source = driver.get_page_source()
|
764
766
|
if (
|
765
767
|
'data-callback="onCaptchaSuccess"' in source
|
768
|
+
or "/challenge-platform/scripts/" in source
|
769
|
+
or 'id="challenge-widget-' in source
|
766
770
|
or "cf-turnstile-" in source
|
767
771
|
):
|
768
772
|
return True
|
@@ -857,48 +861,46 @@ def _uc_gui_click_captcha(
|
|
857
861
|
visible_iframe = False
|
858
862
|
if (
|
859
863
|
frame != "iframe"
|
860
|
-
and driver.is_element_present(
|
861
|
-
|
864
|
+
and driver.is_element_present(
|
865
|
+
"%s .cf-turnstile-wrapper" % frame
|
866
|
+
)
|
867
|
+
):
|
868
|
+
frame = "%s .cf-turnstile-wrapper" % frame
|
869
|
+
elif (
|
870
|
+
frame != "iframe"
|
871
|
+
and driver.is_element_present(
|
872
|
+
'%s [name*="cf-turnstile"]' % frame
|
873
|
+
)
|
874
|
+
and driver.is_element_present("%s div" % frame)
|
862
875
|
):
|
863
|
-
frame = "%s div
|
876
|
+
frame = "%s div" % frame
|
864
877
|
elif (
|
865
878
|
driver.is_element_present('[name*="cf-turnstile-"]')
|
866
879
|
and driver.is_element_present("div.spacer div")
|
867
880
|
):
|
868
881
|
frame = "div.spacer div"
|
869
882
|
elif (
|
870
|
-
(
|
871
|
-
driver.is_element_present('[name*="cf-turnstile-"]')
|
872
|
-
or driver.is_element_present('[id*="cf-turnstile-"]')
|
873
|
-
)
|
883
|
+
driver.is_element_present('script[src*="challenges.c"]')
|
874
884
|
and driver.is_element_present(
|
875
|
-
'
|
885
|
+
'[data-testid*="challenge-"] div'
|
876
886
|
)
|
877
887
|
):
|
878
|
-
frame = '
|
888
|
+
frame = '[data-testid*="challenge-"] div'
|
889
|
+
elif driver.is_element_present(
|
890
|
+
'form div:not([class]):has(input[name*="cf-turn"])'
|
891
|
+
):
|
892
|
+
frame = 'form div:not([class]):has(input[name*="cf-turn"])'
|
879
893
|
elif (
|
880
|
-
|
881
|
-
and driver.is_element_present(
|
882
|
-
"%s .cf-turnstile-wrapper" % frame
|
883
|
-
)
|
894
|
+
driver.is_element_present('[src*="/turnstile/"]')
|
895
|
+
and driver.is_element_present("form div:not(:has(*))")
|
884
896
|
):
|
885
|
-
frame = "
|
897
|
+
frame = "form div:not(:has(*))"
|
886
898
|
elif driver.is_element_present(".cf-turnstile-wrapper"):
|
887
899
|
frame = ".cf-turnstile-wrapper"
|
888
900
|
elif driver.is_element_present(
|
889
901
|
'[data-callback="onCaptchaSuccess"]'
|
890
902
|
):
|
891
903
|
frame = '[data-callback="onCaptchaSuccess"]'
|
892
|
-
elif (
|
893
|
-
(
|
894
|
-
driver.is_element_present('[name*="cf-turnstile-"]')
|
895
|
-
or driver.is_element_present('[id*="cf-turnstile-"]')
|
896
|
-
)
|
897
|
-
and driver.is_element_present(
|
898
|
-
'div > div > [style*="margin"][style*="padding"]'
|
899
|
-
)
|
900
|
-
):
|
901
|
-
frame = 'div > div > [style*="margin"][style*="padding"]'
|
902
904
|
else:
|
903
905
|
return
|
904
906
|
if driver.is_element_present('form[class*=center]'):
|
@@ -1081,6 +1083,8 @@ def _uc_gui_handle_captcha(
|
|
1081
1083
|
driver.minimize_window()
|
1082
1084
|
driver.set_window_rect(win_x, win_y, width, height)
|
1083
1085
|
time.sleep(0.33)
|
1086
|
+
tab_up_first = False
|
1087
|
+
special_form = False
|
1084
1088
|
if ctype == "cf_t":
|
1085
1089
|
if (
|
1086
1090
|
driver.is_element_present(".cf-turnstile-wrapper iframe")
|
@@ -1103,25 +1107,24 @@ def _uc_gui_handle_captcha(
|
|
1103
1107
|
):
|
1104
1108
|
frame = "div.spacer div"
|
1105
1109
|
elif (
|
1106
|
-
(
|
1107
|
-
driver.is_element_present('[name*="cf-turnstile-"]')
|
1108
|
-
or driver.is_element_present('[id*="cf-turnstile-"]')
|
1109
|
-
)
|
1110
|
+
driver.is_element_present('script[src*="challenges.c"]')
|
1110
1111
|
and driver.is_element_present(
|
1111
|
-
'
|
1112
|
+
'[data-testid*="challenge-"] div'
|
1112
1113
|
)
|
1113
1114
|
):
|
1114
|
-
frame = '
|
1115
|
+
frame = '[data-testid*="challenge-"] div'
|
1116
|
+
elif driver.is_element_present(
|
1117
|
+
'form div:not([class]):has(input[name*="cf-turn"])'
|
1118
|
+
):
|
1119
|
+
frame = 'form div:not([class]):has(input[name*="cf-turn"])'
|
1120
|
+
tab_up_first = True
|
1121
|
+
special_form = True
|
1115
1122
|
elif (
|
1116
|
-
(
|
1117
|
-
|
1118
|
-
or driver.is_element_present('[id*="cf-turnstile-"]')
|
1119
|
-
)
|
1120
|
-
and driver.is_element_present(
|
1121
|
-
'div > div > [style*="margin"][style*="padding"]'
|
1122
|
-
)
|
1123
|
+
driver.is_element_present('[src*="/turnstile/"]')
|
1124
|
+
and driver.is_element_present("form div:not(:has(*))")
|
1123
1125
|
):
|
1124
|
-
frame =
|
1126
|
+
frame = "form div:not(:has(*))"
|
1127
|
+
tab_up_first = True
|
1125
1128
|
else:
|
1126
1129
|
return
|
1127
1130
|
else:
|
@@ -1146,13 +1149,18 @@ def _uc_gui_handle_captcha(
|
|
1146
1149
|
if ctype == "g_rc":
|
1147
1150
|
selector = "span#recaptcha-anchor"
|
1148
1151
|
found_checkbox = False
|
1149
|
-
|
1152
|
+
if tab_up_first:
|
1153
|
+
for i in range(10):
|
1154
|
+
pyautogui.hotkey("shift", "tab")
|
1155
|
+
time.sleep(0.027)
|
1156
|
+
for i in range(34):
|
1150
1157
|
pyautogui.press("\t")
|
1151
|
-
time.sleep(0.
|
1158
|
+
time.sleep(0.027)
|
1152
1159
|
active_element_css = js_utils.get_active_element_css(driver)
|
1153
1160
|
if (
|
1154
1161
|
active_element_css.startswith(selector)
|
1155
1162
|
or active_element_css.endswith(" > div" * 2)
|
1163
|
+
or (special_form and active_element_css.endswith(" div"))
|
1156
1164
|
):
|
1157
1165
|
found_checkbox = True
|
1158
1166
|
break
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: seleniumbase
|
3
|
-
Version: 4.30.
|
3
|
+
Version: 4.30.3
|
4
4
|
Summary: A complete web automation framework for end-to-end testing.
|
5
5
|
Home-page: https://github.com/seleniumbase/SeleniumBase
|
6
6
|
Author: Michael Mintz
|
@@ -158,9 +158,9 @@ Provides-Extra: pdfminer
|
|
158
158
|
Requires-Dist: pdfminer.six==20221105; python_version < "3.8" and extra == "pdfminer"
|
159
159
|
Requires-Dist: pdfminer.six==20240706; python_version >= "3.8" and extra == "pdfminer"
|
160
160
|
Requires-Dist: cryptography==39.0.2; python_version < "3.9" and extra == "pdfminer"
|
161
|
-
Requires-Dist: cryptography==43.0.
|
161
|
+
Requires-Dist: cryptography==43.0.1; python_version >= "3.9" and extra == "pdfminer"
|
162
162
|
Requires-Dist: cffi==1.15.1; python_version < "3.8" and extra == "pdfminer"
|
163
|
-
Requires-Dist: cffi==1.17.
|
163
|
+
Requires-Dist: cffi==1.17.1; python_version >= "3.8" and extra == "pdfminer"
|
164
164
|
Requires-Dist: pycparser==2.22; extra == "pdfminer"
|
165
165
|
Provides-Extra: pillow
|
166
166
|
Requires-Dist: Pillow==9.5.0; python_version < "3.8" and extra == "pillow"
|
@@ -239,13 +239,15 @@ Requires-Dist: zstandard==0.23.0; extra == "selenium-wire"
|
|
239
239
|
<br />
|
240
240
|
</p>
|
241
241
|
|
242
|
+
<p>SeleniumBase is the professional toolkit for web automation activities. Built for testing websites, bypassing CAPTCHAs, enhancing productivity, completing tasks, and scaling your business.</p>
|
243
|
+
|
242
244
|
--------
|
243
245
|
|
244
246
|
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/** folder](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
|
245
247
|
|
246
248
|
👤 Note that <span translate="no">SeleniumBase</span> <a translate="no" href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md"><b>UC Mode</b> (Stealth Mode) has its own ReadMe</a>.
|
247
249
|
|
248
|
-
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover
|
250
|
+
ℹ️ Scripts can be called via <code translate="no"><b>python</b></code>, although some <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> expect <a href="https://docs.pytest.org/en/latest/how-to/usage.html" translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover, collect, and run tests automatically).
|
249
251
|
|
250
252
|
<p align="left">📗 Here's <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py">my_first_test.py</a>, which tests login, shopping, and checkout:</p>
|
251
253
|
|
@@ -133,10 +133,10 @@ cryptography==39.0.2
|
|
133
133
|
|
134
134
|
[pdfminer:python_version >= "3.8"]
|
135
135
|
pdfminer.six==20240706
|
136
|
-
cffi==1.17.
|
136
|
+
cffi==1.17.1
|
137
137
|
|
138
138
|
[pdfminer:python_version >= "3.9"]
|
139
|
-
cryptography==43.0.
|
139
|
+
cryptography==43.0.1
|
140
140
|
|
141
141
|
[pillow]
|
142
142
|
|
@@ -34,7 +34,7 @@ if sys.argv[-1] == "publish":
|
|
34
34
|
print("\nERROR! Publishing to PyPI requires Python>=3.9")
|
35
35
|
sys.exit()
|
36
36
|
print("\n*** Checking code health with flake8:\n")
|
37
|
-
os.system("python -m pip install 'flake8==7.1.
|
37
|
+
os.system("python -m pip install 'flake8==7.1.1'")
|
38
38
|
flake8_status = os.system("flake8 --exclude=recordings,temp")
|
39
39
|
if flake8_status != 0:
|
40
40
|
print("\nERROR! Fix flake8 issues before publishing to PyPI!\n")
|
@@ -263,9 +263,9 @@ setup(
|
|
263
263
|
'pdfminer.six==20221105;python_version<"3.8"',
|
264
264
|
'pdfminer.six==20240706;python_version>="3.8"',
|
265
265
|
'cryptography==39.0.2;python_version<"3.9"',
|
266
|
-
'cryptography==43.0.
|
266
|
+
'cryptography==43.0.1;python_version>="3.9"',
|
267
267
|
'cffi==1.15.1;python_version<"3.8"',
|
268
|
-
'cffi==1.17.
|
268
|
+
'cffi==1.17.1;python_version>="3.8"',
|
269
269
|
"pycparser==2.22",
|
270
270
|
],
|
271
271
|
# pip install -e .[pillow]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/behave_bdd/features/steps/calculator.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/file_parsing/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{seleniumbase-4.30.1 → seleniumbase-4.30.3}/examples/boilerplates/samples/test_page_objects.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|