Wait for Element in a Web Page

Waits for an element on a web page.

Command availability: IBM RPA SaaS and IBM RPA on premises

Description

Waits for an element to appear on a web page. Use a selector type to identify the element and validate whether it exists on the web page.

Script syntax

IBM RPA's proprietary scripting language has a syntax similar to other programming languages. The script syntax defines the command's syntax in the script file. You can work with this syntax in IBM RPA Studio's Script mode.

webWaitElement --selector(WebElementSelectors) --id(String) --name(String) --css(String) --linktext(String) --innertext(String) --tagname(String) --xpath(String) --class(String) --elementvalue(String) [--simulatehuman(Boolean)] [--timeout(TimeSpan)] (Boolean)=value

Dependencies

Use the Start Browser (webStart) command to start a browser or use the Find Internet Explorer Browser (findBrowser) command to attach the Microsoft Internet Explorer before using the Wait for Element in a Web Page (webWaitElement) command.

Input parameter

The following table displays the list of input parameters available in this command. In the table, you can see the parameter name when working in IBM RPA Studio's Script mode and its Designer mode equivalent label.

Designer mode label Script mode name Required Accepted variable types Description
Selector selector Required WebElementSelectors Type of selector to identify the web elements in the web page.

See the selector parameter options.
ID id Required when the Selector parameter is Id, IdAndName Text A text that contains the ID attribute value to match the element to appears.
Element name name Required when the Selector parameter is Name, NameAndValue, IdAndName Text A text that contains the Name attribute value to match the element to appears.
CSS css Required when the Selector parameter is CssSelector Text A text that contains the CSS selector to match the element to appears.
Link text linktext Required when the Selector parameter is LinkText Text A text that contains the link text value to match the element to appears.
Text innertext Required when the Selector parameter is InnerTextAndTag Text A text that contains the element text content to match the element to appears.
Tag name tagname Required when the Selector parameter is InnerTextAndTag Text A text that contains the tag name attribute value to match the element to appears.
XPath xpath Required when the Selector parameter is XPath Text A text that contains the XML path value to match the element to appears.
Class name class Required when the Selector parameter is ClassAndValue Text A text that contains the class attribute value to match the element to appears.
Element Value elementvalue Required when the Selector parameter is ClassAndValue, NameAndValue Text A text that contains the Value attribute value to match the element to appears.
Simulate Human simulatehuman Optional Boolean This parameter does not change the behavior of the command.
Timeout timeout Optional Time Span, Number, Text Maximum waiting time for running the command. When blank, the default timeout is 5 seconds.

selector parameter options

The following table displays the options available for the selector input parameter. The table shows the options available when working in Script mode and the equivalent label in the Designer mode.

Designer mode label Script mode name Description
Id Id Matches the web element based on the ID attribute value.
Name Name Matches the web element based on the Name attribute value.
Css CssSelector Matches the web element based on the CSS selector value.
Link text LinkText Matches the web element based on the link text attribute value.
Inner text and control type InnerTextAndTag Matches the web element based on the element text content and the tag name attribute value.
XPath XPath Matches the web element based on the XML path in the HTML root.
Class and value ClassAndValue Matches the web element based on the class name and value attribute.
Name and value NameAndValue Matches the web element based on the name and the value attribute.
Id and name IdAndName Matches the web element based on the id and name attribute value.

Output parameter

Designer mode label Script mode name Accepted variable types Description
Success value Boolean Returns true if the element appears, otherwise returns false.

Example

The Wait for Element in a Web Page (webWaitElement) checks if the search field is available to enter the value "IBM". In this case, the browser remains open, but if the element doesn't appear, the browser closes.

defVar --name elementAppears --type Boolean
webStart --name browser --type "Chrome"
webNavigate --url "https://google.com"
// The command checks if the search field is on the web page, the "IBM" value will only be entered if the search field is displayed within 10 seconds.
webWaitElement --selector "Name" --name q --timeout "00:00:10" elementAppears=value
if --left "${elementAppears}" --operator "Is_True"
	webSet --value "IBM" --selector "Name" --name q
	webClose --name browser --leavebrowseropen
	// Keep the browser open.
else
	webClose --name browser
	logMessage --message "----------\r\nCommand result: ${elementAppears}\r\nThe element isn\'t available.\r\n-----------" --type "Info"
endIf

Limitations

  • When interacting with a not unique web element, using XPath or CSS selectors, that is inside an IFrame, it is necessary to specify which element inside the IFrame the command will interact with. Otherwise, only the first element will be found.