Skip to content

Latest commit

 

History

History
136 lines (96 loc) · 15.4 KB

File metadata and controls

136 lines (96 loc) · 15.4 KB
graph LR
    Core_Browser_Automation["Core Browser Automation"]
    Configuration_Options["Configuration & Options"]
    ChromeDriver_Patcher["ChromeDriver Patcher"]
    CDP_Communication["CDP Communication"]
    Event_Process_Management["Event & Process Management"]
    Web_Element_Abstraction["Web Element Abstraction"]
    DevTool_Testing_Utilities["DevTool & Testing Utilities"]
    Core_Browser_Automation -- "initializes with" --> Configuration_Options
    Core_Browser_Automation -- "integrates" --> ChromeDriver_Patcher
    Core_Browser_Automation -- "communicates via" --> CDP_Communication
    Core_Browser_Automation -- "manages events and processes through" --> Event_Process_Management
    Core_Browser_Automation -- "generates" --> Web_Element_Abstraction
    ChromeDriver_Patcher -- "provides executable to" --> Core_Browser_Automation
    Configuration_Options -- "provides capabilities to" --> Core_Browser_Automation
    Event_Process_Management -- "handles events from" --> CDP_Communication
    DevTool_Testing_Utilities -- "tests" --> Core_Browser_Automation
    DevTool_Testing_Utilities -- "configures" --> Configuration_Options
    click Core_Browser_Automation href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/Core Browser Automation.md" "Details"
    click Configuration_Options href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/Configuration & Options.md" "Details"
    click ChromeDriver_Patcher href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/ChromeDriver Patcher.md" "Details"
    click CDP_Communication href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/CDP Communication.md" "Details"
    click Event_Process_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/Event & Process Management.md" "Details"
    click Web_Element_Abstraction href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/Web Element Abstraction.md" "Details"
    click DevTool_Testing_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/undetected-chromedriver/DevTool & Testing Utilities.md" "Details"
Loading

CodeBoardingDemoContact

Component Details

The undetected-chromedriver library provides a robust solution for automating Chrome browser interactions while bypassing common bot detection mechanisms. Its core functionality revolves around the Core Browser Automation component, which orchestrates browser initialization, session management, and interactions. This component heavily relies on the ChromeDriver Patcher to modify the ChromeDriver executable, making it 'undetectable'. Browser behavior is configured via the Configuration & Options component. Advanced control and real-time interaction are achieved through the CDP Communication component, which interfaces with the Chrome DevTools Protocol, and the Event & Process Management component, handling asynchronous events and detached browser processes. Web element interactions are simplified by the Web Element Abstraction component, while DevTool & Testing Utilities aid in development and testing.

Core Browser Automation

The primary interface for controlling the Chrome browser. It handles initialization, session management, and core interactions, orchestrating other internal modules for seamless automation.

Related Classes/Methods:

Configuration & Options

Responsible for handling and merging Chrome browser options and preferences, ensuring the browser is launched with the desired configuration.

Related Classes/Methods:

ChromeDriver Patcher

Crucial for bypassing detection mechanisms by patching the ChromeDriver executable. It handles checking patch status, downloading, unzipping, and applying patches.

Related Classes/Methods:

CDP Communication

Facilitates communication with the Chrome DevTools Protocol (CDP), enabling advanced control over browser tabs, pages, and elements by sending commands and receiving events.

Related Classes/Methods:

Event & Process Management

Manages asynchronous events, particularly for CDP events, by providing an event loop and dispatching events to handlers. Also responsible for launching and managing detached browser processes.

Related Classes/Methods:

Web Element Abstraction

Provides an abstraction for interacting with web elements within the browser, including methods for navigating the DOM structure and finding child elements recursively.

Related Classes/Methods:

DevTool & Testing Utilities

Contains utility functions and structures primarily used for development and testing purposes related to Chrome DevTools, including data structuring and a comprehensive test function.

Related Classes/Methods: