Breadcrumbs

 

Subject: Review of the TagUI Workshop held on July 13, 2022

Source: Excerpts from "20220713 TagUI Workshop to Civic Service College Colleagues - Open Educational Resources / Open Source Physics @ Singapore | Open Educational Resources / Open Source Physics @ Singapore"

Prepared for: [Intended Audience - e.g., Interested Parties, Future Workshop Organizershttps://tagui.readthedocs.io/en/latest/setup.html" target="_blank" rel="noopener noreferrer" style="box-sizing: border-box; color: rgb(0, 102, 204); text-decoration: underline;">https://tagui.readthedocs.io/en/latest/setup.html). The recommended version was TagUI v6.110 for Windows.

  • VS Code Studio: A code editor (https://code.visualstudio.com/Download).
  • SelectorsHub Chrome Extension: A tool to help identify web elements for automation (https://chrome.google.com/webstore/detail/selectorshub/ndgimibanhlabgdgjcpbbndiehljcpfh).
  • Importance of Installation and Setup: The initial focus was heavily on getting TagUI installed and running correctly. Michael's instructions provided specific recommended installation paths (e.g., c:/rpa/tagui for WOG and personal computers, d:/rpa/tagui for SSOE) and highlighted potential issues with paths containing spaces (e.g., c:/program files/rpa). The trainer also guided one early participant with the installation, indicating the potential challenges and time required for this step.
  • Utilizing Pre-built Flows from Github: Participants were directed to a specific Github repository (https://github.com/lookang/TagUI) containing example TagUI flows. The instructions included downloading the repository as a zip file, unzipping it into the designated flows folder, and potentially renaming it for organization.
  • Basic TagUI Commands: The workshop aimed to familiarize participants with fundamental TagUI commands through the command prompt. Key commands mentioned include:
  • tagui live: To run TagUI in live mode, allowing step-by-step execution and interaction.
  • tagui c:/rpa/tagui/flows/tagui live: A specific example of running live mode.
  • tagui update: To update TagUI to the latest version.
  • tagui: To display a list of available TagUI commands.
  • tagui filename.tag: To execute a TagUI flow file.
  • tagui filename.tag -d: To create a deployable .deploy file for one-click execution.
  • tagui filename.tag -t: To run TagUI in turbo mode (faster execution, use with caution).
  • Browser Automation and Credentials: A desired outcome was for participants to have their TagUI Chrome browser configured with saved Gmail login credentials. The process involved manually entering the login ID and password once in tagui live mode, allowing subsequent flows to utilize these saved credentials. The source notes that "TagUI saves id and password on local computer , not visible in *.tag files, increases security".
  • Practical Use Cases and Demonstrations: References were made to a YouTube library of demonstrations in the MOE context (https://www.youtube.com/playlist?list=PLYIwRBA8ZhdPh8W68XCB1gEMv8A0Bl7Qk). The outline section also provides examples of using tagui live to identify web elements, creating .tag files from live mode commands, taking screenshots (snap page), and navigating file structures.
  • Considerations for Implementation: The materials touch upon best practices, such as navigating to the folder of the .tag file before running it, the potential unreliability of mouse movements during automation ("do not move your mouse when a flow is running"), and caution against excessive use of visual automation due to image storage requirements. The importance of introducing wait commands for reliability in turbo mode is also mentioned.
  • Addressing Potential Questions and Limitations: The "end faq" section reveals common questions and provides insights:
  • TagUI's compatibility with Microsoft Edge (tagui filename.tag -edge).
  • Web scraping capabilities (with a link to an example flow: https://github.com/lookang/TagUI/blob/main/table/table.tag).
  • The rationale behind using TagUI ("use whatever tool that make sense, tagui, python etc depending on your skill level and resourcing available to you").
  • TagUI's ability to remember login credentials.
  • Basic automation of tasks like Gmail scheduling.
  • Limitations of TagUI for complex tasks like comparing Excel files ("Maybe need a different tool like visual code studio to compare, tagui may not do the job as well. Use the tool that has the strength in, don't use tagui to do tasks it is not strong in.").
  • Community Support: Participants were encouraged to join the Telegram TagUI-RPA chat group (https://web.telegram.org/z/#-1299183642) for community support and discussions.
  • Reference to Open Educational Resources: The title and the inclusion of links like Open Source Physics (https://www.compadre.org/osp/webdocs/about.cfm) suggest a broader context of utilizing open educational resources and open-source tools within the educational sector in Singapore.
  • Links to Further Resources: The document provides numerous links to official TagUI documentation, Github repositories with example flows (including WOG-specific flows), YouTube tutorials, an AI Singapore TagUI beginner online certification course (https://learn.aisingapore.org/courses/learn-rpa-with-tagui-beginners-course/), and other related materials.

3. Key Quotes:

  • From Michael's initial email: "Thank you for indicating your interest in the informal sharing first mooted in Derrick’s thread in the R user community." This highlights the informal and community-driven nature of the workshop.
  • Michael on installation paths: "Recommended path is c:/rpa/tagui for WOG... and personal computer else d:/rpa/tagui for SSOE cannot work on c:/program files/rpa etc probably due to the space in the path." This provides specific technical guidance for participants.
  • On saving login credentials: "if you use gmail, need to key in the login id and password once, for this browser to remember so that it can be used in all other flows." This explains the process for configuring browser login.
  • From the "end faq" section on the purpose of TagUI: "My response is use whatever tool that make sense, tagui, python etc depending on your skill level and resourcing available to you." This offers a pragmatic perspective on tool selection.
  • Caution on mouse movement: "do not move your mouse when a flow is running, this is a chance the flow will fail if your mouse is messing up the flow." This emphasizes a crucial practical consideration for running TagUI flows.
  • On the limitations of TagUI: "Use the tool that has the strength in, don't use tagui to do tasks it is not strong in." This provides realistic expectations about TagUI's capabilities.

4. Conclusion:

The TagUI workshop for CSC colleagues aimed to provide a foundational understanding of RPA using the open-source TagUI tool. The materials emphasize practical setup, basic command usage, and leveraging existing resources within the MOE context. While acknowledging potential challenges and limitations, the workshop sought to empower participants to explore the possibilities of task automation in their work. The extensive list of references indicates a commitment to ongoing learning and community support for TagUI users.

 

TagUI Workshop Review

Quiz

  1. What is the primary purpose of the TagUI software according to the workshop materials?
  2. Name at least three software or browser extensions recommended for use with TagUI during the workshop.
  3. What is the recommended installation path for TagUI on Windows for WOG users, and why is a specific path suggested?
  4. Describe the function of the command tagui live as explained in the materials.
  5. What steps are involved in saving login credentials for Gmail within the TagUI Chrome browser?
  6. How can participants access pre-made TagUI flows from the workshop materials?
  7. What is the purpose of running TagUI in "turbo mode," and what precaution is advised when using it?
  8. Why does the instructor generally avoid visual automation in TagUI?
  9. According to the FAQ, can TagUI be used for web scraping, and if so, how is the output typically saved?
  10. What is the recommended first step if a user wants to seek help or engage with other TagUI users?

Quiz Answer Key

  1. The primary purpose of TagUI, based on the workshop, is to provide a free and open-source Robotics Process Automation (RPA) tool that can automate web-based and desktop tasks by simulating user interactions.
  2. Three software or browser extensions recommended are TagUI, VS Code Studio, and the SelectorsHub Chrome Extension.
  3. The recommended installation path for WOG users on Windows is c:/rpa/tagui. This specific path is suggested because paths with spaces (like c:/program files/rpa) may cause issues with TagUI.
  4. The command tagui live allows users to interactively execute TagUI commands line by line in a Chrome browser, providing a live demonstration of how the automation works.
  5. To save Gmail login credentials, a user needs to run tagui live in the command prompt and then manually enter their login ID and password in the opened TagUI Chrome browser. This allows the browser to remember the credentials for future TagUI flows.
  6. Participants can access pre-made TagUI flows by downloading the GitHub repository from the provided link (https://github.com/lookang/TagUI) and unzipping its contents into the c:/rpa/tagui/flows/ directory (or a similar location).
  7. Running TagUI in "turbo mode" (using the -t flag) aims to speed up the execution of automation flows. However, it is advised to use it with caution and potentially introduce wait 0.5 commands to slow down execution and improve reliability, especially due to varying internet speeds.
  8. The instructor generally avoids visual automation due to its reliance on storing .png images for computer vision matching, which can make the automation less portable and more prone to failure if the visual elements change.
  9. Yes, TagUI can be used for web scraping. According to the FAQ, this functionality works with .tag files (automation scripts) but not in live mode, and the scraped data is typically saved to a .csv file.
  10. The recommended first step to seek help or engage with other TagUI users is to join the Telegram TagUI-RPA chat group via the provided link (https://web.telegram.org/z/#-1299183642).

Essay Format Questions

  1. Discuss the potential benefits and challenges of using a free and open-source RPA tool like TagUI within a government or educational context, drawing upon the information provided in the workshop materials.
  2. Based on the workshop content, analyze the key steps involved in setting up and running a basic TagUI automation flow, highlighting the importance of the recommended software and file structure.
  3. Compare and contrast the interactive "live mode" and the execution of a .tag file in TagUI, explaining when each approach might be most useful for a user.
  4. Evaluate the significance of the provided reference links and resources for individuals interested in learning and utilizing TagUI for RPA tasks, categorizing them based on their primary purpose (e.g., installation, documentation, examples, community support).
  5. Considering the questions raised in the FAQ section of the workshop materials, discuss the practical considerations and limitations of using TagUI for various automation tasks, and when alternative tools might be more suitable.

Glossary of Key Terms

  • RPA (Robotic Process Automation): A technology that uses software robots (bots) to automate repetitive, rule-based tasks that are typically performed by humans, such as data entry, form filling, and web interactions.
  • Open Educational Resources (OER): Teaching, learning, and research materials that are freely available and can be used, adapted, and shared with no or limited restrictions.
  • Open Source: Software for which the original source code is made freely available and may be redistributed and modified.
  • TagUI: A free and open-source command-line RPA tool that uses a simple, human-readable scripting language to automate web and desktop interactions.
  • VS Code Studio (Visual Studio Code): A free source code editor made by Microsoft for Windows, Linux, and macOS, often used for writing and editing code, including TagUI scripts.
  • SelectorsHub: A Chrome browser extension that helps users easily find CSS selectors and XPath expressions for web elements, which are crucial for identifying elements to automate with TagUI.
  • Command Prompt: A command-line interpreter application available in most Windows operating systems, used to execute entered commands. In the context of TagUI, it is used to run TagUI commands and scripts.
  • Flows: In TagUI terminology, a sequence of automated steps defined in a .tag file to perform a specific task.
  • tagui live: A TagUI command that launches a Chrome browser instance controlled by TagUI, allowing users to interactively execute automation steps line by line for testing and demonstration.
  • GitHub: A web-based platform used for version control and collaboration on software development projects. The workshop materials refer to a GitHub page containing example TagUI flows.
  • Turbo Mode (-t): A TagUI execution option that attempts to run automation flows at a faster pace, but may be less reliable due to variations in internet speed and website responsiveness.
  • Visual Automation: An approach to RPA that relies on identifying and interacting with screen elements based on their visual appearance (e.g., clicking an image). TagUI primarily uses web element selectors but has some limited visual automation capabilities.
  • Web Scraping: The process of extracting information from websites. TagUI can be used for basic web scraping tasks.
  • .tag file: The file extension used for TagUI automation scripts, which contain a series of commands to be executed by the TagUI engine.
  • WOG (Whole-of-Government): Refers to the Singapore government's integrated approach to policymaking and service delivery. The workshop mentions specific TagUI setup considerations for WOG users.
  • SSOE (Standard Operating Environment): A standardized desktop configuration used within some organizations, which might have different installation requirements for software like TagUI.

  20220713 TagUI Workshop to Civic Service College Colleagues

Venue: CSC Tamarind 2, Level 5, CSC

Date: 20220713

Time:  1330-1430

Trainer: Lawrence and Suhaimi

after 1430 is consultation for more in depth usage

Mode: Face to Face

Equipment: Personal Computer with Admin rights to install these software

  1. TagUI https://tagui.readthedocs.io/en/latest/setup.html
  2. VS code studio https://code.visualstudio.com/Download 
  3. SelectorsHub Chrome Extension https://chrome.google.com/webstore/detail/selectorshub/ndgimibanhlabgdgjcpbbndiehljcpfh 
  4. Reference: https://tagui.readthedocs.io/en/latest/reference.html

Desired Outcomes: 

  1. Participants' computer can install and run TagUI ( tall order, need more time, only one early participant was guided to install) 
  2. Participants' computer can download and unzip all my TagUI on Github ( didn't do with them)
  3. Participants can run in command prompt: c:/rpa/tagui/flows/tagui live
  4. Participant's computer TagUI Chrome Browser has gmail login and password added  
  5. Be able to run simple one TagUI flow

 

From Michael

Hi Colleagues,
Thank you for indicating your interest in the informal sharing first mooted in Derrick’s thread in the R user community.

I’m soft-booking your time on Wed 13 July and providing some materials should you be keen to get your hands dirty for the power users in our midst.

  1.  Installation https://tagui.readthedocs.io/en/latest/setup.html
    1. Recommended to use Window installer TagUI v6.110 for Windows  
    2. Recommended path is c:/rpa/tagui for WOG (need to email your own ITD to whitelist and install for your WOG, TagUI is already running on my WOG) and personal computer 
    3. else d:/rpa/tagui for SSOE 
    4. cannot work on c:/program files/rpa etc probably due to the space in the path
    5. Run command line
    6. navigate to c:/rpa/tagui/flows/
    7. type tagui live 
    8. if you use gmail, need to key in the login id and password once, for this browser to remember so that it can be used in all other flows 
    9. type tagui update
    10. this will update the tagui to the latest version if need
    11. type tagui
    12. this will show all the commands available
  2. GitHub lookang TagUI page – https://github.com/lookang/TagUI 
    1. https://github.com/lookang/TagUI/archive/refs/heads/main.zip download this into the folder c:/rpa/tagui/flows/ 
    2. unzip it and rename the folder to c:/rpa/tagui/flow/lookang for example to get all my flows 
  3. Youtube library of demonstrations in MOE’s context – https://www.youtube.com/playlist?list=PLYIwRBA8ZhdPh8W68XCB1gEMv8A0Bl7Qk
    1. Demo a simple TagUI, how to get elements name or id to click on 
  4. Deck from AI SG – https://weelookang.blogspot.com/2022/06/tagui-roadmap-slides-my-personal-copy.html


I’ll provide you with a bit more detail with what Lawrence will share closer to the date, and update the venue in this calendar invite. In the unlikely event of an emergency, the backup date I have is Wed 27 July morning, which I won’t book until something crops up.


Thank you once again for your enthusiasm, which warms my heart. Get ready for a fun session of feasting on brain food (and also some light refreshments). Bring your lunch if you wish 
 
 

Reference:

1. TagUI-AI Singapore https//aisingapore.org/tagui/ 
2. Installation Windows, Mac, Linux  https://tagui.readthedocs.io/en/latest/setup.html 
3. UiPath paid RPA https://www.uipath.com/pricing 
4. TagUI GitHub issues-discussions https://github.com/kelaberetiv/TagUI 
5. TeleGram TagUI-RPA chat https://web.telegram.org/z/#-1299183642 
8. GitHub of SLS TagUI flows https://github.com/lookang/TagUI 
9. TagUI saves id and password on local computer , not visible in *.tag files, increases security https://www.youtube.com/watch?v=5wLWNB_ucbc&list=PLYIwRBA8ZhdPh8W68XCB1gEMv8A0Bl7Qk&index=7 
10. https://github.com/lookang/TagUI/tree/main/SLSvle extract SLS user data to verify user with CG admin roles
11. https://github.com/lookang/TagUI/tree/main/share share many lessons with many different emails, automated
12. TagUI auto post Multi-choice and free response questions in CSV to SLS https://www.youtube.com/watch?v=KTExNaIGDfI&list=PLYIwRBA8ZhdPh8W68XCB1gEMv8A0Bl7Qk&index=12
15. Free AI Singapore TagUI beginner online certification course https://learn.aisingapore.org/courses/learn-rpa-with-tagui-beginners-course/
16. WOG Tagui flows https://github.com/lookang/TagUI/tree/main/login the files has wog text in them
 
 
Photo from Michael
 
 
Outline:
  1. in command prompt type tagui /Users/lookang/Desktop/tagui/flows/samples/1_google.tag
    1. use of live to demo how tagui works line by line
    2. navigate to three dots on chrome, right click, developer console
    3. use right click and inspect the element
    4. copy any element to see if tagui can find it such as name, class etc
    5. copy the line that work in live mode into a *.tag file to be made as a flow
    6. snap page to abc.png with go into the folder of the flow folder example /Users/lookang/Desktop/tagui/flows/samples/ or on Windows c:/rpa/tagui/samples/ 
    7. tagui /Users/lookang/Desktop/tagui/flows/samples/1_google.tag -d will create a *.deploy file for one click solution and use
    8. best practise: navigate the the folder of the tag file and run tagui especially if the flow needs to save file to the folder etc
    9. wogaa example of sending email, example of uipath fails and tagui was use to do the rpa now https://github.com/lookang/TagUI/blob/main/wogaa/compose_mail_wogaa6csv.tag
    10. to use tagui in turbo mode type tagui filename.tag -t
    11. use turbo in your own risk, better to introduce a wait 0.5 to make tagui slow down to match the internet speed, for reliability 
    12. do not move your mouse when a flow is running, this is a chance the flow will fail if your mouse is messing up the flow
    13. I typically avoid visual automation due to the need to store *.png images for computer vision matching
    14. possible to use tagui python for more intelligent and library use 
  2. Question on Edge: yes, TagUI can also run Microsoft edge if it is installed, type tagui filename.tag -edge 
  3. Question on Web scrapping: Yes, tagui can https://github.com/lookang/TagUI/blob/main/table/table.tag only works on the *.tag but not the live mode. output file is https://github.com/lookang/TagUI/blob/main/table/table.csv
  4.  Question on why use tagui: My response is use whatever tool that make sense, tagui, python etc depending on your skill level and resourcing available to you
  5. Question on login and password: yes, tagui browser can remember all login id and password, go tagui live and key in manually, future instance of flows will inherit all the saved id and passwords
  6. Question on gmail scheduler: tagui click 3 elements to schedule , comment out what you dont want, and uncomment the last 3 lines 
  7. Question on how to compare 2 excel files. Maybe need a different tool like visual code studio to compare, tagui may not do the job as well. Use the tool that has the strength in, don't use tagui to do tasks it is not strong in.
  8. Question on community: join https://web.telegram.org/z/#-1299183642 and search TagUI RPA
     
 

Frequently Asked Questions about TagUI Workshop

  1. What is TagUI and what are its primary applications as discussed in this context? TagUI is a free and open-source Robotic Process Automation (RPA) tool developed by AI Singapore. The workshop focused on its use for automating web-based tasks, such as Gmail login, data extraction (web scraping), and interacting with web elements (clicking buttons, filling forms). It was presented as a user-friendly alternative or complement to more complex or paid RPA solutions like UiPath, especially for individuals with varying technical skills.
  2. What were the main objectives of the TagUI workshop held on July 13, 2022, for Civic Service College colleagues? The primary desired outcomes of the workshop were to enable participants to install and run TagUI on their computers, download and access pre-made TagUI flows from GitHub, execute basic TagUI commands in the command prompt (specifically tagui live), have their TagUI Chrome browser remember Gmail login credentials, and successfully run a simple TagUI automation flow.
  3. What are the recommended installation steps and configurations for TagUI on a Windows operating system according to the provided materials? The recommended method for installing TagUI on Windows is to use the Windows installer. The suggested installation path for WOG (Whole-of-Government) computers is c:/rpa/tagui, noting that ITD whitelisting and installation might be required. For SSOE, d:/rpa/tagui is suggested. Installing in paths with spaces, like c:/program files/rpa/, is likely to cause issues. After installation, the command prompt should be navigated to the c:/rpa/tagui/flows/ directory to run TagUI using commands like tagui live.
  4. How can participants access and utilize pre-built TagUI automation flows shared by the trainer? Participants were instructed to download a ZIP file containing TagUI flows from the trainer's GitHub page (https://github.com/lookang/TagUI/archive/refs/heads/main.zip) and unzip it into the c:/rpa/tagui/flows/ directory (or the designated rpa/tagui/flows/ folder). It was also suggested to rename the unzipped folder (e.g., to c:/rpa/tagui/flow/lookang) to organize the flows. These .tag files can then be executed using the tagui command followed by the file path in the command prompt.
  5. How does TagUI handle website interaction and element identification for automation? TagUI uses a human-readable syntax to interact with web elements. During the workshop, the "live mode" (tagui live) was demonstrated to show how TagUI executes commands line by line. Participants were taught to use Chrome's Developer Console (by right-clicking on a web page element and selecting "Inspect") and the SelectorsHub Chrome Extension to identify element attributes like name, class, or ID. These attributes can then be used in TagUI commands to interact with those elements (e.g., click name:submit_button).
  6. What considerations and best practices were highlighted for running TagUI automation flows effectively and reliably? Several best practices were mentioned, including navigating to the folder containing the .tag file before running TagUI, especially if the flow involves saving files. Running TagUI in "turbo mode" (tagui filename.tag -t) was mentioned for faster execution but advised to be used cautiously, potentially with the inclusion of wait 0.5 commands to match internet speed and improve reliability. It was also emphasized to avoid moving the mouse cursor while a TagUI flow is running to prevent interference. The workshop leaned towards using element selectors over visual automation (which relies on image matching) for better robustness.
  7. Does TagUI offer any features related to security and handling sensitive information like login credentials? Yes, TagUI has the ability for its built-in Chrome browser to remember login IDs and passwords. This is done by manually entering the credentials once while in tagui live mode. Subsequent runs of TagUI flows will then inherit these saved credentials, eliminating the need to hardcode them in the .tag files, thus enhancing security. The saved credentials are stored locally on the computer and are not visible within the .tag files.
  8. Beyond the basics covered in the workshop, what are some other potential capabilities and resources available for learning more about TagUI? The sources mention several advanced capabilities, including web scraping (demonstrated by a table extraction example), the possibility of using TagUI with Python for more complex logic, and the ability to run TagUI with Microsoft Edge. Resources for further learning include the official TagUI documentation, the trainer's GitHub page with various example flows, a YouTube playlist with demonstrations in an MOE context, an AI Singapore beginner online certification course, and a Telegram chat group for community support. There are also specific examples of TagUI flows for tasks like sending emails, extracting data from SLS (Singapore Student Learning Space), automating posting of questions to SLS, and running TagUI on SSOE.