Skip to content

UWASDEV/UWA-Free

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UWA Free - Unlimited Web Automation Free Edition

You can download on Releases page: https://github.com/UWASDEV/UWA-Free/releases

UWA Free is not a Gmail Creator Bot, Google Search Traffic Bot, Twitter Auto Post Bot, Youtube View Bot, or Web Scraper Bot. UWA Free is a flawless infrastructure with a dynamic module architecture and superior capabilities coded at the core level, allowing anyone to create any bot they desire in just 5-10 minutes using a single-page module that can be generated by AI with a single prompt.

This software provides a flexible infrastructure that allows every user to automate any task they want by writing their own automation module and placing it under the User Directory. The core of the "Unlimited Web Automation" claim lies in this dynamic and flexible infrastructure.

Core Features and Dynamic Module Architecture

The core power of UWA Free lies in its modular structure that allows users to integrate their custom automation tasks into the system. The system dynamically resolves added modules by scanning the user directory (User Directory) at startup and during runtime. Furthermore, all human behaviors (human-like jitters in mouse movements; non-linear scrolling with varying speeds from pixel to pixel; human-like keyboard usage featuring random short delays between letters, longer random delays at dots, commas, and spaces to simulate thinking while typing, and making typos and correcting them, etc.) are coded at the core level. Thanks to this, users developing modules only need to call these ready-to-use behavior patterns.

  • Missions: Defines the main actions the automation will perform on the target page. For example; browsing the page (surfing) or just visiting (just visit).
  • Navigators: Determines how the target page will be reached. It offers options such as entering a direct URL, going through a Google search, or reaching it via a link on another site (backlink).
  • Extensions: These are modules that can be used within missions and navigators, providing independent features like SMS verification or 2FA code generation. Users can call these extensions via shortcodes through the ExtensionsOrchestrator.

Human Behaviors Engine

To prevent detectable bot movements, UWA Free executes all interactions according to "human behavior" standards. These features are defined in core components such as interaction-utils:

  • Mouse Movement: Mouse movements are non-linear; they occur at random speeds, incorporating specific easing, micro-deviations (jitter), and intermittent pauses (pauseChance).
  • Scrolling: Page scrolling is performed smoothly, synchronized with random pauses and drifting of the mouse cursor to random parts of the screen.
  • Typing: Random delays are applied between keystrokes during keyboard data entry, and human-like typing errors (typos) are simulated.
  • Clicks & Delays: "Hover" delays are applied before clicks, delays are added between mousedown and mouseup, and random waits are performed between each task cycle.

Note for Module Developers: These mechanisms are provided at the core level via interactionService. Developers do not need to write these complexities from scratch; they simply need to call the ready-made interaction patterns (e.g., scroll, mouseMove, textSelection, linkClick).

Fingerprint Spoofing System

UWA Free generates unique hardware and software data specifically for each session to ensure automation sessions look exactly like a real user.

  • Session-Based Generation: Unique fingerprint data (WebGL, Canvas, User Agent, Screen resolution, etc.) is randomly generated and cached for each browser session.
  • Export with Cookies: When a session is successfully completed, the fingerprint data (spoofing snapshot) belonging to that session can be exported along with the cookies. Thus, when these cookies are later imported, the respective session can be resumed using exactly the same device and browser properties.

User Interface and Settings

Tasks Form Fields

The following fields are used when creating or editing a new task:

  • Task Name: A descriptive name that identifies your task.
  • Target URL: The address of the actual target website where the task (Mission) will be performed.
  • Mission Type: Allows you to choose the action to be performed on the target page.
    • Just Visit: Minimal behavior focused purely on visiting for rapid execution.
    • Surfing: Comprehensive web browsing simulation with genuine human behaviors.
    • Example Mission: Developer reference task demonstrating all capabilities.
  • Navigator Type: Determines how the Target URL will be reached.
    • Direct URL: Navigates directly to the Target URL.
    • Google Search: Performs a search on the Google homepage and navigates from the results to the target. (When selected, the 'Search Terms' field appears).
    • Google Search Smart: Performs a Google search, learns the exact position of the Target URL, and jumps straight to that page in subsequent runs. (When selected, the 'Search Terms' field appears).
    • Backlink Navigation: First navigates to the specified Source URL, then clicks the Target URL link found there. (When selected, the 'Source URL' field appears).
  • Search Terms: (Only for Google Search navigators) Search terms to be used to find the Target URL in Google search results (can be comma-separated).
  • Source URL: (Only for Backlink Navigator) The address of the source website containing the link to the Target URL.
  • Select Proxy: Allows you to set the proxy strategy for the task. The selection is made from proxies installed in the system that are not in an "error" state.
    • Without Proxy: The task runs directly over your own connection.
    • Any (All): A random proxy is selected for each session from among all proxies in the system.
    • Any (Singles): A random proxy is selected for each session from "single" proxies that are not included in any group.
    • Group: A random selection is made from proxies within a specific Proxy Group you select.
    • Specific Proxy: A single proxy you choose from the list is used exclusively.
  • Cookies Import: When enabled, it imports the cookies from the selected folder before each session.
  • Cookies Export: When enabled, it exports the cookies of successfully completed sessions to the selected folder.
    • Repeat Cookies: When there are no cookies left to import, it moves the used cookies from the processed directory back to the import folder to continue the loop seamlessly.
    • Import SpoofingData: Also imports the device fingerprint data saved alongside the cookies.
    • Export SpoofingData: Saves the device fingerprint data of the session together with the cookies.
  • Localization:
    • Locale: Sets the browser language. Supports all Playwright Chromium-based locale formats (BCP 47 language tags) (e.g., tr-TR, en-US, en-GB, de-DE, fr-FR, es-ES, pt-BR, ru-RU, zh-CN, ja-JP, etc.).
    • Timezone: Sets the browser timezone (e.g., Europe/Istanbul).
  • Internet Optimization: When enabled, blocks the loading of specific resource types to save bandwidth. It also provides significant CPU and Memory savings.
    • Blocked Resource Types: The resource types to block (e.g., image, stylesheet).
    • Exception List: Used to relax or completely disable blocking rules for specific domains. The format is domain:resourcetype1,resourcetype2.
      • google.com:script,fetch -> Scripts and fetch resources are allowed to load on google.com under all circumstances (others continue to be blocked based on the Blocked Resource Types list).
      • example.com:all -> No resources are blocked on example.com; the page loads fully and normally.
  • Target Sessions: The total number of sessions that must be successfully completed for this task.
  • Time (Hours): Determines over how many hours the task's sessions will be distributed (if 0 is entered, it runs at full speed without attempting to spread over a specific timeframe).

Proxy Management

You can manage proxy addresses to be added to the system individually or in bulk.

Add Proxy (Single Proxy Addition) Form:

  • Proxy Type: Proxy protocol (HTTP, HTTPS, SOCKS4, SOCKS5).
  • Is IPv6?: If checked, indicates that the proxy is IPv6 (validation is bypassed and WebRTC is disabled).
  • Proxy URL: The IP address or hostname of the proxy server.
  • Port: The port number of the proxy server.
  • Username (Optional): Username for proxy access.
  • Password (Optional): Password for proxy access.
  • IP Change URL (Optional): The service provider API link to trigger an IP change when the session ends.
  • Remark (Optional): A custom note/name to remember the proxy.
  • Check Proxy: Tests whether the entered information works and displays details like ping time and country.

Bulk Add (Bulk Proxy Addition) Form:

  • Proxy Type: The protocol of the proxies to be added in bulk.
  • Input Format: The format of the proxy list to be pasted into the box (like IP:PORT:USERNAME:PASSWORD).
  • Import as IPv6: All listed proxies will be marked as IPv6.
  • Proxy List: A text area where one proxy will be written per line according to the defined format.
  • Group Name (Optional): Used to bundle the added proxies under a specific group.

Modules Settings

This page lists the Mission, Navigator, and Extension modules installed in the system. Thanks to the dynamic module infrastructure, extension developers can define the interface fields of the modules they write directly through code. Extension classes can define the form fields (text, password, select box, etc.) they want to appear on this screen via the getSettingsUI and getInfoUI methods.

  • For example; SMS Verification Extensions (5Sim, GrizzlySMS) dynamically request settings such as API Key, Service Name, Country, etc. from the user on this page, and these saved values are made directly available for the module's use. By default, Mission and Navigator modules are listed on this page purely for informational purposes (Title, Version, Description) and do not contain configuration forms within themselves.

Settings (Global Settings)

These are the settings that control the general behavior of UWA Free:

  • User Directory: The main folder path containing user modules, files, database, and logs. New modules are placed in the respective directories under this folder.
  • Session Stagger Delay (ms): The waiting time between parallel-started sessions.
  • Session Timeout (ms): The maximum time to wait before terminating a frozen session.
  • Max Concurrent Sessions: The maximum number of parallel sessions (browsers) that can run simultaneously.
  • Max Consecutive Failures: The number of consecutive failures the task will tolerate before entering an "error" state.
  • Page Load Timeout (ms): The maximum time to wait for a page to load.
  • Navigation Timeout (ms): The time to wait for a navigation action (e.g., after a click) to complete.
  • Navigation State Timeout (ms): The time to wait for the page state to become stable after navigation.
  • Element Wait Timeout (ms): The time to wait for an element (button, input, etc.) to appear on the page.
  • Browser Launch Timeout (ms): The maximum time to wait for the browser to launch.
  • Proxy Connection Timeout (ms): The maximum time to wait to connect to the proxy server.
  • Max Retry Attempts: The default (fallback) value used when a specific retry count is not provided for core-level mechanisms.
  • Base Delay (ms): The default (fallback) time used if a specific wait time is not defined for core-level mechanisms. It determines the fundamental delay to wait between retry attempts.
  • Captcha Challenge Timeout (ms): The time to wait for a single Captcha solving attempt.
  • Captcha Detection Interval (ms): The interval for checking whether there is a Captcha on the page.
  • Note: Captcha Handler currently only supports Cloudflare Turnstile at the core level. Anyone who wishes can write their own captcha solver modules as extensions.

Support (Donate)

If you would like to support the project or contribute to its development, you can make a donation via the addresses below:

  • USDT (TRC20) or TRX: TJeidzN9Vqvpak8oNGnWBT6bDXMuWnjmMj

About

Unlimited Web Automation - Most Advanced Browser Automation Tool Completely Free

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors