Recent Releases of rpa

rpa - v1.50 - fix macOS no python

Details of this change at issue #477. To upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 2 years ago

rpa - v1.49 - fix snap() add focus()

Details of this change at issues #479 #478. To upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 2 years ago

rpa - v1.48 - bin() secure temporary storage

Details of this change at issue #396, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 3 years ago

rpa - v1.47 - handle error with error()

Details of this change at issue #299, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 4 years ago

rpa - v1.46 - log text with debug()

Details of this change at issue #375, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 4 years ago

rpa - v1.45 - turbo mode 10X faster

Details of this change at issue #297, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.44 - improved init() error message

Details of this change at issue #289, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.43 - get_text() & del_chars()

Details of this change at issue #259, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.42 - add telegram() to send notifications

Details of this change at issue #281, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.41 - download_location() & tagui_location()

Details of this change at issue #279 and issue #257, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.40 - using table() with table number

Details of this change at issue #275, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.39 - folder path with space, better process titles

Details of this change at issue #266, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.38 - using url() without https:// prefix

Details of this change at issue #264, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.37 - Improved Folders with Spaces

Details of this change at issue #261, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 4 years ago

rpa - v1.36 - Custom TagUI Folder

Details of this change at issue #257, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.35 - Space in Folder Name (Windows)

Details of this change at issue #256, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.34 - Enable Headless Mode

Details of this change at issue #240, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.33 - Select Option by Value or Text

Details of this change at issue #245, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.32 - Non-English Support

Details of this change at issue #193, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.31 - Headless Chrome Fix

Details of this change at issue #216, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.29 - Windows Chrome Fallback

Details of this change at issue #224, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.30 - Fix macOS OpenSSL

Details of this change at issue #222, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.28 - Auto-setup SSL Py v3.8/3.9

Details of this change at issue #233, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh almost 5 years ago

rpa - v1.27 - Production Stable Release

RPA for Python development completed. To upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh over 5 years ago

rpa - v1.26 - Windows Chrome Exit Cleanly

Details of this change at issue #101, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh about 6 years ago

rpa - v1.25 - Windows Chrome.exe Fallback

Details of this change at issue #103, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh about 6 years ago

rpa - v1.24 - Visual Automation Using Text

Details at issue #101 and an example here. To upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh about 6 years ago

rpa - v1.23 - New Name - RPA for Python

Details of this change at issue https://github.com/tebelorg/RPA-Python/issues/100, to upgrade to this release, pip install rpa --upgrade

- Python
Published by kensoh about 6 years ago

rpa - v1.22 - New Package Name - RPA

Transitioning the project to use a new package name rpa to make RPA capabilities more accessible to Python users and support the decentralisation movement. To upgrade to this release, pip install rpa

In a truly decentralised world, there is no need for branding because the main bakery you go to is your local bakery, and that shop doesn't need a brand name to differentiate it from competitors. That bakery also obviously isn't some global chain of bakeries with a global brand name. This change is similar to the decision to drop the logo for this project and simply use a snake emoticon.

Next for consideration is changing the project name from TagUI for Python to RPA for Python to further remove any branding and shape this project to be the default RPA package for Python users. My vision for it is to be one of the many tools in a Python user toolbox to build amazing stuffs.

- Python
Published by kensoh about 6 years ago

rpa - v1.21 - Improved pack() for Windows

#36 - improved pack() to include vcredist_x86.exe (MSVCR110.dll) dependency for Windows

- Python
Published by kensoh about 6 years ago

rpa - v1.20 - Update on PCs without Internet

94 - add update() to update package and TagUI files without internet

- Python
Published by kensoh about 6 years ago

rpa - v1.19 - Fix Chrome Not Closing

93 - fix Chrome not closing after execution, probably due to Chrome update

- Python
Published by kensoh about 6 years ago

rpa - v1.18 - Fix OpenSSL Error

86 - initial fix for macOS homebrew openssl issue causing 'dyld: Library not loaded' error


For new users who pip install tagui for the first time, hopefully you should have no issues related to this, as the solution is now in-built into the setup() function in the package in v1.18 release.

For existing users the unlikely situation which the error can happen is when Homebrew is being used to update either its openssl package or all its packages installed. There are 2 solutions, I recommend using solution 2 the fast way unless you prefer to play and wait around -

  1. pip install tagui --upgrade and then run t.setup() to refresh OpenSSL version to v1.0. Please note that doing so will reset the Chrome user profile of your automated Chrome browser, and you will lose the cookies and stored passwords saved in your automated browser. You can mitigate this by backing up and restoring the folder ~/.tagui/src/chrome/taguiuserprofile

  2. The easy solution is just copy and run the commands below in your terminal window. The commands will remove any existing v1.1 of OpenSSL, any stale v1.0, before installing v1.0 brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

- Python
Published by kensoh about 6 years ago

rpa - v1.17 - Linux Visual Automation Setup Note

41 - show special setup message on Linux visual automation during initial installation

- Python
Published by kensoh over 6 years ago

rpa - v1.16 - OpenJDK & 64-bit Check

81 - move to Amazon Corretto OpenJDK from Oracle Java JDK and 64-bit check

- Python
Published by kensoh over 6 years ago

rpa - v1.15 - Fix select() to Do Exact Matching

71 - synced upstream bug fix on select() to do exact matching instead of containing value

- Python
Published by kensoh over 6 years ago

rpa - v1.14 - Deploy on PCs without Internet

36 - added pack() to deploy in air-gap environments with network restriction (no internet)

- Python
Published by kensoh over 6 years ago

rpa - v1.13 - Support Directory Change Halfway

62 - support the use case of user changing current working directory after init()

- Python
Published by kensoh over 6 years ago

rpa - v1.12 - Get and Put Text with clipboard()

57 - Added clipboard() helper function to get text from clipboard or put text to clipboard

- Python
Published by kensoh over 6 years ago

rpa - v1.11 - Add frame() & popup(), Fix snap() & read()

36 - add link to license in tagui.py to facilitate air-gap deployments (envs without internet access to pip)

50 - add frame() function to access web page frames (supports accessing main frame and sub frame using their id or name). add popup() function to access webpage popup tabs launched from webpage.

52 - bugfix for snap() and read(). when 'page' is used to mean the entire webpage, a 'cannot find page' error message appears. this fix makes using 'page' works correctly with snap() and read().

- Python
Published by kensoh over 6 years ago

rpa - v1.10 - Fix run() on Windows

The run() function does not work correctly on Windows. The root cause is semi-colon is not appropriate as delimiter to combine with exit 0 command (for retrieving error output without triggering exception).

This fix uses ; for Linux / macOS and & as the delimiter in Windows environment. More details in #46.

- Python
Published by kensoh over 6 years ago

rpa - v1.9 - Cleaner Usage and Error Handling

For details on this release, see issues below - - #35 - cleaner usage and execution without TagUI intermediary files - #34 - graceful error handling on Windows folder path with space

- Python
Published by kensoh over 6 years ago

rpa - v1.8 - ask() with Chrome browser

31 - ask() shows the question in terminal window. This is not intuitive if automation is running on Chrome web browser and a prompt appears in terminal window to ask for user input. Updated behaviour to show the prompt in Chrome web browser, if it's available.

32 - if visual automation mode is not on and snap('page.png', 'screenshot.png') is used, there is no error message saying that init(visual_automation = True) is needed to use this. Updated to show error message instead of hanging and waiting for SikuliX response.

24 - updated readme linking to RedMart online groceries example to automate re-adding all items to cart. To reschedule a delivery, user needs to cancel and create a new order by re-adding items manually.

- Python
Published by kensoh over 6 years ago

rpa - v1.7 - Fix timeout() Bug

30 - timeout() hangs if visual automation mode is not used

There is a bug in the timeout step in upstream TagUI project (https://github.com/kelaberetiv/TagUI/issues/497). When timeout() is used with visual_automation = False, it hangs indefinitely. This release implements the bug-fix upstream.

- Python
Published by kensoh over 6 years ago

rpa - v1.6 - Auto-flush Dead Processes

18 - auto-flush dead TagUI processes, eg if Ctrl+C is used or forget to close()

It is possible that TagUI-related processes (main TagUI process, integration processes - SikuliX / Chrome, and Chrome browser) are not exited cleanly under certain conditions. For eg, if user Ctrl+C to kill a TagUI for Python script, or if user forgets to use close() to gracefully close off the running processes.

These dead processes have insignificant impact to TagUI for Python functionality. However they can cause unnecessary drain on battery and CPU cycles. Raising this issue to make a commit that runs a script that flush all TagUI-related processes.

This will be run within init() so that an accidental Ctrl+C or forgetting to close() allows immediate resumption of use by relaunching Jupyter notebook or Python interactive shell or Python script, and using init(). Placing within close() is meaningless for the scenarios where dead processes happen.

- Python
Published by kensoh over 6 years ago

rpa - v1.5 - Cleaner Debug Log

16 - cleaner debug log tagui_python.log when single quote ' is used

Upstream TagUI project has a limitation in live mode. It was a tradeoff to enable dynamic variables working for selectors and parameters in live mode. As a result, TagUI for Python sends the following string to TagUI when a single quote ' is used as parameter (non-identifier parameter).

'+"\'"+'

With the issue kelaberetiv/TagUI#465 raised by user, an improvement is made upstream, using a solution for a similar problem while developing TagUI for Python. Thus a commit can now be made here that replaces single quote ' for non-identifier parameters with the standard convention.

\'

This may seem like a small improvement, but it helps clarity in debug log tagui_python.log when t.debug(True) is set. Otherwise, whenever there is a ' it would result in some roundabout escape sequence above due to a limitation in upstream live mode.

- Python
Published by kensoh over 6 years ago

rpa - v1.4 - Explicit UTF-8 Encoding

14 - explicit Unicode UTF-8 encoding for both Python 2 and 3 for read and write operations

This helps potential issues when TagUI outputs UTF-8 encoded characters from extended ASCII set (eg webpage has special characters) but user's Python locale preferred encoding is not UTF-8, resulting in I/O error between TagUI for Python and TagUI. More details at issue #14.

- Python
Published by kensoh over 6 years ago

rpa - v1.3 - OCR and ROI Capability

13 - support OCR capability and regions of interests for read() and snap()

12 - streamline API, remove functions show() and save(), remove visible()

- Python
Published by kensoh over 6 years ago

rpa - v1.2 - Fix download() and snap()

4 - highlight auto-wait and timeout() in readme. There is automatic waiting for an element to appear before timeout happens, and error is returned that the element cannot be found. To change the default timeout of 10 seconds, use timeout() function.

6 - on macOS with Python 3, there is no SSL certs support by default. This causes problem with downloading files from https:// domains. Adding an additional check to auto-install SSL certs. Before this change, download() simply fails. This change auto-setup SSL certs for users who downloaded Python 3 installation from Python website. For Anaconda or brew installations, this issue may still happen, will look out and make new code checks as needed.

7 - upstream fix implemented for snapshots of web elements on Chrome. Fix improves performance and quality base on newer DevTools Protocol capabilities. Before this change, snap() captures screenshot of the whole webpage instead of only the element. As part of the issue, adding capability to autosync TagUI delta files when new TagUI for Python releases are installed. Before this change, t.setup() may be needed for existing installations to access new features.

- Python
Published by kensoh over 6 years ago

rpa - v1.1 - Persistent Setup Location

In v1.0, setup folder is in the user temporary folder. After a few days, some operating systems may sporadically delete some files within the setup folder. This makes it unpredictable to know whether a downloaded version of TagUI has all the files intact to support TagUI for Python.

With this release, the setup folder now resides at %APPDATA%\tagui folder on Windows and at ~/.tagui folder on Linux / macOS. (~ is user home directory). More details at issue https://github.com/tebelorg/TagUI-Python/issues/3.

- Python
Published by kensoh over 6 years ago

rpa - v1.0 - Beta Release

Development details and API reference

- Python
Published by kensoh over 6 years ago