Web Automation Actions | Zoho RPA Help

Web Automation Actions

Web automation is a key feature in Zoho RPA, designed to simplify and automate your web-based tasks. It allows you to interact with web pages, extract data, and perform actions automatically, freeing you up from manual work and making your processes much more efficient.
NotesSupported RPA Agent Platforms : Windows, Mac and Linux

Supported Web Browsers

For automation execution : Ulaa, Mozilla Firefox, Google Chrome, and Microsoft Edge. Download the extension
Web browser extension [for Web Recorder] : Google Chrome, Microsoft Edge, and Ulaa. Learn more about Web browser recorder. 
To configure your RPA Web Automation actions, you must install the web browser extension. Learn more.

Available Actions

1. Open URL

Navigates to a specific URL in a web browser. 
Example: Use this action to navigate to a website or a web application as the starting point for your workflow.



Configuration

Choose browser: Select the web browser you want to use to run the RPA flow.
Execute in the background: Choose whether to display the browser in the foreground or run the automation in the background.
URL: Enter the website URL you want to navigate to.
Open in: Specify how you want to open the new URL. Choose whether to open it in a new tab or the same tab.

2. Click

Simulates a mouse click on a web element (e.g. buttons, links).
Example: When automating an ecommerce site, the bot can click the "Add to Cart" button to add items to the shopping cart.



Configuration
UI element selectors: : UI element selectors allow you to identify and click the specific element on a web page. Learn more about the different UI element selectors
Click type: Lets you choose the type of click you want to perform, whether a single click, double click, or right click.

3. Hover

Hovers the mouse over an element of a webpage to view tooltips or reveal hidden or dropdown menus.
Example: Hovering over navigational menu items on an webpage usually displays tooltips that explain what the menu options do.



Configuration
UI element selectors: UI element selectors allow you to identify and hover over a specific element on a webpage. Learn more about the different UI element selectors

4. Set text

Writes text to the text attribute of a specified UI element on a webpage. It can be used to input text into a text field or input box.
Example: Fill in the name field on a Contact Us form on a website.



Configuration
UI element selectors: UI element selectors allow you to identify the specific elements on a web page and write or set a value to it. Learn more about the different UI element selectors
Input text: The text to be entered into the input field.
When the input field already has text: If there is existing text in the input field, determine how to handle it. We can do the following:
  1. Replace text: Replace the existing text with the new text. 
  2. Append text: Add the given text to the existing text.

5. Get text

Extracts text content from a specified UI element on a webpage.
Example: On a weather forecasting website, we can use Get Text to extract and display the current temperature.



Configuration
UI element selectors: UI element selectors allow you to identify a specific element on a web page and get the text value from it. Learn more about the different UI element selectors

6. Set checkbox

Selects or clears checkboxes or toggle switches on a webpage. 
Example: On websites or web applications, users can often customize their notification preferences for different types of alerts, such as push notifications, email notifications, and in-app notifications. These preferences are typically managed through checkboxes or toggle switches. You can use this action to automate the task. 



Configuration
UI element selectors: UI element selectors allow you to identify the specific checkbox element on the webpage and set the value as true or false depending on the state of the element on the page. Learn more about the different UI element selectors
Checkbox value: The value that should be assigned for the checkbox field, that is check or uncheck. 

7. Get checkbox state

Determines whether a checkbox is checked or unchecked.
Example: Check if users have accepted the terms and conditions on a website form.



Configuration
UI element selectors: UI element selectors allow you to identify the specific checkbox element on the webpage and set the value as true or false depending on the state of the element on the page. Learn more about the different UI element selectors

8. Select item

Selects an option from a dropdown list on a webpage.
Example: On an online travel website, from and to locations are usually in dropdown lists. We can use the Select Item action to automate the task. 



Configuration
UI element selectors: Select a specific item from a dropdown list on the webpage based on UI element selectors. Learn more about the different UI element selectors
Operation: Choose the action you want to perform on the target element. The available operations are:
  1. Select item by value: Choose a list item based on its value.
    1. Value: Enter the value of the element you want to select.
  2. Select item by index: Choose a list item based on its position in the list.
    1. Index: Specify the index of the element you want to select. Indexing starts from 1.
  3. Clear all: Remove all selected items from the list.

9. Extract table data

Extracts data from an HTML table on a webpage.
Example: On shipping websites, shipping costs are based on weight, and destinations are often displayed in a table. We can use the Extract table data action to automate the task. 


Configuration
UI element selectors:  Extracts data from the specified target table on the webpage using UI element selectors. This value should correspond to the <table> element in the HTML DOM. Learn more about the different UI element selectors

Next button selectors: Specify the UI element selector for the button or link used to navigate to subsequent pages of table data or to view more rows within the table (e.g., a "Next" button or a pager controls)
Selector type: We support various selector types, including XPath, ID, Name, and CSS Selectors.
Selector: Enter the value of the web component or locator for the element you want to target. This value should correspond to an element in the HTML DOM.
Data columns to extract: Specify which data columns to extract from the table
  1. All columns
    Extract all data columns from the identified HTML table.

  2. Include specific columns
    Extract only the specified columns. Enter the column numbers separated by commas (e.g., 1,3,5). The first column is 1.

  3. Exclude specific columns
    Skip the specified columns during data extraction. Enter the column numbers to exclude, separated by commas (e.g., 2, 7).
Column data format
Define the data format for specific columns. By default, data from all columns is extracted as plain text. To retrieve specific columns in a different format, enter their numbers (separated by commas) and choose the corresponding data format option.
HTML:  Extracts the complete HTML content within the <td> tags of the specified columns (e.g., for links or images).
Selector: Returns the XPath of the <td> element for the specified columns.
Note: If you do not specify a format for a column, table data will be extracted as plain text.
Number of data rows to extract
Specify the number of data rows you want to extract from the HTML table, starting from the first row.
  1. If no value is set, all available data rows will be extracted.
  2. To extract a specific number of initial rows, enter that number (e.g., 10).
  3. If the specified number exceeds the total number of rows, all available rows will be extracted.
    Example: If a table has 15 rows and you specify 20, all 15 available rows will be extracted.

10. Select radio button

Selects a radio button on a webpage.
Example: On the checkout page of ecommerce websites, customers select their preferred payment method from a list of available radio buttons. We can use the Select Radio Button action to automate this task.



Configuration
UI element selectors: UI element selectors allow you to identify and interact with radio button type HTML elements on a web page. Learn more about the different UI element selectors

11. Scroll

Allows you to automate the scrolling of web pages, bringing specific content into view or navigating through lengthy webpages.
Example: On an ecommerce website, use the "Scroll" action to scroll through product listings, ensuring that all products are loaded and available for data extraction.



Configuration
Scroll type: Define how you want to perform the scrolling action on the webpage. We support the following options:
  1. UI element Selectors: Scroll to a specific element on the webpage based on UI element selectors. Learn more about the different UI element selectors
  2. Scroll by pixels: Scroll the webpage based on a specified number of pixels.
    1. Scroll direction: Choose whether to scroll vertically or horizontally.
    2. Number of pixels: The number of pixels that you want to scroll. To scroll up or left, you can use negative values. 

12. Send hotkeys

Enables the automation of keyboard shortcuts to trigger specific actions or commands within a web application.
Example: You may want to use Ctrl + D to bookmark the webpage you are currently have open. 



Configuration
UI element selectors: UI element selectors allow sending keyboard shortcuts to specific elements on a web page. Learn more about the different UI element selectors
  1. Selector type: We support various selector types, including XPath, ID, Name, and CSS Selectors.
  2. Selector: Enter the value of the web component or locator for the element you want to target. This value should correspond to an element in the HTML DOM.
Key modifiers: Choose the key modifiers for your hotkey. Available modifiers include Ctrl, Alt, Shift, and Win.
Key: Select the key to be used along with the key modifiers to form the hotkey. 
Generated hotkey: The resulting hotkey combination will be displayed in this field for reference. 

13. Type into

Automates the process of entering text or data into input fields or forms on a webpage.
Example: Use the Type Into action to simulate typing in your login credentials and password to log in to your online store portal app.



Configuration
UI element selectors: UI element selectors allow simulating manual typing into specific elements on a webpage. Learn more about the different UI element selectors
  1. Selector type: We support various selector types, including XPath, ID, Name, and CSS Selectors.
  2. Selector: Enter the value of the web component or locator for the element you want to target. This value should correspond to an element in the HTML DOM.
Input text: Enter the text you want to type into the field
Insert keys: Use this option to include special keys like Enter, Tab, and Esc within the input text.
When the input field has text: Lets you choose how to handle existing text in the input field.
  1. Replace text: Replace the existing text with the new text.
  2. Append text: Add the new text to the end of the existing text.
Click before typing: Use this option to ensure the UI element is active before attempting to type.
Delay between keystrokes (in ms): Set the desired time delay (in milliseconds) between each keystroke to simulate a more natural typing pace.

14. Check if element exists

Allows you to verify if a specific piece of text or a UI element exists on a webpage.
Example: On an order checkout page, you may want to check if an "apply coupon" field exists before you try to apply the coupon code. 



Configuration
UI element selectors: UI element selectors allows to identify and interact with specific elements on a web page. Learn more about the different UI element selectors
Check if webpage: Check if the webpage contains the element or a text. 
Text: Enter the text you want to search for.

15. Switch to 

Allows you to switch focus between different open windows or frames within a web application.
Example: Automating flight or hotel bookings for clients by switching between various travel websites to compare prices and availability.



Configuration
Switch to: Choose whether you want to switch to a tab or an iframe on the current active tab. 
Tab index: Index of the tab that you want to switch to. For example, to switch to the first tab in the browser you can use 1. 
Select the iframe: You can select the iframe based on the following:
  1. Iframe Index: Order of the iframe on the webpage 
  2. Name or Id: Name or ID of the given iframe. 
  3. UI element selectors: UI element selectors allows to identify and switch to specific iframe elements on a webpage.

16. Refresh webpage

Automates the process of reloading or refreshing a webpage to access updated content.
Example: To ensure that the latest data is extracted in a web-scraping scenario, we may want to refresh the financial news website periodically.

17. Get element selectors

Get the HTML selectors for a particular search text on the page. Currently only the XPath of the HTML element matched will be retrieved. It is mostly useful incases where unique attributes (such as id or specific class names) are absent or inconsistent or the position of element is not fixed on the page. 

Example: On an online banking portal, accounts statements mostly would have a "Download Statement" link but the exact position may vary across different statement periods or page versions. We can use "Get element selectors" with the text "Download Statement" to get the XPath for the element and use it subsequent actions. 



Configuration
Search Text: Enter the visible text you want to locate on the webpage to retrieve its element selectors.
Exact Match: Only elements whose visible text is identical to the text you entered will be considered a match.
Contains: Elements whose visible text includes the text you entered (as a substring) will be considered a match.

Sample Output: (When multiple selectors match)
  1. {
  2.    selectors_list : [
  3.       {
  4.          full_xpath : "/html/body/div/div/div/div/section/ol/li/p"
  5.       },
  6.       {
  7.          full_xpath : "/html/body/div/div/div/div/section/ol/li[3]/p"
  8.       },
  9.       {
  10.          full_xpath : "/html/body/div/div/div/div/section/ol/li[5]/p/b"
  11.       },
  12.       {
  13.          full_xpath : "/html/body/div/div/div/div/section[2]/div/a"
  14.       },
  15.       {
  16.          full_xpath : "/html/body/div/div/div/div/section[2]/div/a[2]"
  17.       },
  18.       {
  19.          full_xpath : "/html/body/div/div/div/div/section[2]/div/a[3]"
  20.       }
  21.    ]
  22. }

18. Go forward a page

Navigates the web browser forward to the next page in the browsing history.
Example: Navigating to the next page of a paginated list of items, such as a list of products on an e-commerce website

19. Go back a page

Navigates the web browser back to the previous page in the browsing history.
Example: After viewing details of a particular product on an e-commerce website, we can use the "Go back a page" action to return to the list of products.

20. Close browser

Terminates the web browser session, closing all open tabs.
Example: Use the Close Browser action after you complete all of your actions to end your automation process.

UI element selectors

UI element selectors allow you to precisely identify and interact with specific elements on a web page. By using these selectors, your automation can locate buttons, text fields, and so on to perform actions like clicking, typing, or extracting data. We support a variety of selector types to ensure proper element identification. 

Selector types:
ID 
This selector targets an HTML element using its unique id attribute. This attribute is designed to be distinct within the entire HTML document.
When to use : It is ideal for elements that have a distinct and stable id. It's generally the most reliable and fastest selector when available.
Example: id="myLoginButton"

Name
This selector targets an HTML element using its name attribute. The name attribute is commonly used for form elements like input fields, radio buttons, and checkboxes.
When to use: It is useful for interacting with form controls, especially when multiple elements might share the same name (e.g., radio button groups).
Example: name="usernameField"

CSS Selectors
CSS selectors are patterns used to select and style HTML elements. It gives us a concise way to target elements based on their tag name, class, ID, attributes, or even their position relative to other elements.
When to use: It is useful when targeting elements based on their visual styling properties or common attributes. Often more readable and efficient than XPath for many common scenarios.
Example: div.product-card > h2.title (selects an h2 with class title that is a direct child of a div with class product-card)

XPath
XPath is a language for navigating and selecting elements within HTML (and XML) documents. It lets you locate elements by traversing the document's structure, using absolute or relative paths, attributes, text content, and complex conditions.
When to use: Useful for complex scenarios where other selectors might fall short. It can select elements that don't have unique IDs or classes, or elements based on their relationships to other elements in the DOM. 
Example: //input[@type='text' and @placeholder='Enter your email'] (selects an input field with type 'text' and placeholder 'Enter your email')

Shadow DOMs
Shadow DOM is a web standard used to create encapsulated, hidden DOM structures. It involves three core components: 
Shadow Host: A regular HTML element that contains the hidden Shadow DOM
Shadow Root: An isolated entry point attached by JavaScript to the Shadow Host, creating a separate DOM boundary.
Shadow Tree: The actual encapsulated HTML, CSS, and JavaScript content inside the Shadow Root.
All the HTML, CSS, and JavaScript inside this shadow tree remain separate from the main document's DOM, which prevents styling conflicts and improves reusability.
When to use: Necessary when interacting with elements that are part of a Shadow DOM. These elements are not directly accessible by standard selectors from the main document due to their encapsulated nature.
Notes
Note: When working with elements inside a Shadow DOM, you will need to use only XPath to the UI Element (i.e., Shadow Tree element). The selector type will be Shadow DOM, and the selector value should be the XPath to the element

Selector:
Enter the specific value of the corresponding selector type. 

Delay Settings

Delay settings allow you to introduce strategic pauses when interacting with UI elements. This option allows you to configure delays so that the actions do not fail due to loading or UI elements not present on the screen. 

Delay before action (Time in ms): This setting allows you to configure a fixed pause, specified in milliseconds, that the bot will wait before attempting the subsequent action, regardless of the readiness of the target UI element.

Delay after action (Time in ms): This setting introduces a fixed pause, specified in milliseconds, that the automation will execute immediately after completing the current action. This can be useful in scenarios where a brief pause is required to allow for post-action processing, such as data saving, transitions between screens or downloading files before the next step in the automation flow. 

Wait for element (Time in ms): This setting defines the maximum duration, in milliseconds, that the automation will wait for a specific UI element to become visible on the screen before proceeding with the associated action. Unlike the fixed delay, this is a dynamic wait. If the designated element appears within the specified timeout period, the automation will proceed immediately. For example, if a timeout of 15000 milliseconds (15 seconds) is configured and the element appears in 10 seconds, the automation will continue after 10 seconds. If the element does not appear within the timeout period, the action will likely result in an error.

Note : Utilize Delay Before Action for consistent, predictable pauses when a general waiting period is necessary. Use Wait for Element to optimize execution time by waiting only as long as required for specific UI elements to load, making your automation more efficient.