Giter VIP home page Giter VIP logo

Big update! tdworker - command library based on tdcore, powerful and convenient. See document here https://www.showdoc.com.cn/tdworker

Version 1.2 is released! Web application automation by Playwright has been integrated, and the documentation here will be updated later~


tdRPA

Read this in other languages: δΈ­ζ–‡ English

Support Python 3.8~3.11 with Windows x64(Except for 3.8.1)

1. What is tdRPA

tdRPA is an RPA SDK for software developers. Developers can use their familiar languages and development tools to develop new RPA applications or integrate RPA functionality into existing systems

2. tdRPA has three components

  • tdSelector: An element picker that visually picks UI elements and generates element lookup expressions
  • tdLocator: Element locator, used to locate the corresponding UI element based on the element search expression generated by tdSelector. After locating the UI element, you can freely access and call its properties and methods
  • tdBot: Executor management function, including pause, log viewing, etc.

3. tdRPA Features

Most RPA Suite tdRPA
Low-code platform, aimed at business users SDK, aimed at professional software developers
Integrated Development Environment, all-in-one Focus only on UI automation operations
Cannot be packaged as a standalone executable for distribution and deployment Can be
Not easy to integrate as a software module into existing application systems Easy
Proprietary visual designer combined with embedded code functionality Use familiar programming languages and development tools
Code functionality, specific or limited programming languages Python module, can also be called by other languages
Visual programming, low efficiency, chaotic and dizzying Code-based, precise and flexible
Poor version management Good
Local Deployment Can be remotely called through RPC, convenient for group control

4.Download

5. Installation

  • tdSelector: No installation required, just unzip the file
  • tdLocator: pip install tdrpa.tdcore
  • tdBot: Installed together with tdLocator

6. Usage

  • tdSelector: Run selector.exe, the shortcut key for element picking is ctrl and cancel is esc
  • tdBot: Automatically starts with tdLocator, and its related functions can be operated through the taskbar tray icon
  • tdLocator: Python usage demonstration is as follows Video
    #import tdcore module
    from tdrpa import tdcore
    
    #get 'Desktop' root element
    desktop=tdcore.LocatorWindows.findElement()
    #print root 'Name' property
    print(desktop._element.Name)
    
    #open 'notepad.exe'
    import os
    os.popen('notepad.exe')
    
    #wait 1 second
    import time
    time.sleep(1)
    
    #click 'Help' menu
    helpSelector="[  { 'wnd' : [ ('Text' , 'Untitled - Notepad') , ('aaRole' , '10') , ('App' , 'notepad.exe') ] } ,  { 'ctrl' : [ ('AutomationId' , 'MenuBar') , ('Text' , 'Application') ] } ,  { 'ctrl' : [ ('Text' , 'Help') , ('aaRole' , '12') ] }]"
    helpElement=tdcore.LocatorWindows.findElement(helpSelector)
    helpElement._element.Click()

    #click 'About' item
    aboutSelector="[  { 'wnd' : [ ('Text' , 'Untitled - Notepad') , ('aaRole' , '10') , ('App' , 'notepad.exe') ] } ,  { 'wnd' : [ ('Text' , 'Help') , ('aaRole' , '11') ] } ,  { 'ctrl' : [ ('AutomationId' , '65') , ('Text' , 'About Notepad') ] }]"
    aboutElement=tdcore.LocatorWindows.findElement(aboutSelector)
    aboutElement._element.Click()

    #For the properties and methods of "_element", please refer to the "uiautomation" https://pypi.org/project/uiautomation/ open-source library or use a programming environment with code completion and intelligent suggestions

7. Additional idea

  • tdRPA is currently in version 1.1 and only supports element operations for Windows native applications. For operating browser applications, please search for "chrome force-renderer-accessibility," which is a way to treat browser web UI elements as native elements for operation. The next plan is to provide better support for browser operations, and automation for mobile applications has not been considered yet
  • Whether it is for personal or commercial use, all applications are free with no restrictions
  • We welcome suggestions for application requirements and will gradually improve the product based on demand-driven approach

8. Similar Products

  • Commercial,costly: UiPath,Blue Prism,Automation Anywhere,Pega,Microsoft Power Automation,UiBot,Cyclone
  • Open Source,most without visual UI element selector: TagUI,Robot Framework,OpenRPA,UI.Vision,UiAutomation,Playwright

9. Milestones

Function Status
Windows native applications Completed
Browser applications In progress
Java applications TBD
Mobile applications TBD
Linux applications TBD

10. Technical Topics

11. Contact

12. Support me

wechat/alipay

tdrpa's Projects

pyjab icon pyjab

Python implementation for Java application UI automation with Java Access Bridge

tdrpa icon tdrpa

RPA SDK by developers for developers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.