Comments (4)
Hi Ken,
Thanks for the detailed explanation. Know where you're coming from.
This is not a big issue in python, because it's now very easy to use def
to add a little function in python to automatically add a "\n" at the end of each write.
You may want to highlight this in your documentation for TagUI-Python though. I'm sure there will some users like me trying to port TagUI script into TagUI-Python and bump into this wondering what's happening.
from rpa-python.
Hi CK, yes you are right! The behaviour is intentional and by design.
It can't be standardised because the target users for both projects are different. TagUI is meant more for business users and non-developers, so things are done as much as possible to simplify tasks for them. This includes automatically inserting line break '\r\n' for write step.
However, TagUI for Python is meant more for Python users. Thus write() step cannot automatically add the line break characters '\r\n' as that means users cannot write a series of strings to a file sequentially without inserting line breaks in between. That would be very un-Pythonic and non-standard programming language behaviour.
In the interim, for TagUI users who want to port to TagUI for Python, they will face this difference. Workaround will be inside the write() function in tagui.py (search for def write(
), change the following line
write_output_file.write(_py23_write(text_to_write)
to something like
write_output_file.write(_py23_write(text_to_write + '\r\n')
This seems hacky, but if standardise the two, the group of Python users using this package directly, compared to existing TagUI users who port to Python, will be a much larger group. And they can't be paying the price to address the the smaller group's needs, especially if it is deviating from standard programming languages best practices. If change TagUI write to be without '\r\n' it will also break backward compatibility of its existing user scripts, thus also not a suitable solution.
from rpa-python.
That's a good suggestion CK. From your experience so far, other than write() and visible(), have you experienced other differences in behaviour between TagUI for Python functions and TagUI steps that would help to be documented?
from rpa-python.
Closing this as CK created a new issue #47 with details of the comparison!
from rpa-python.
Related Issues (20)
- Intercept request/cookies - dom() might work but most likely not, use case not supported HOT 1
- 运行报错,弹出错误窗口"IDE not useable" - possibly due to copying directly to new PC HOT 1
- I can't run the examples on Alma Linux 9 OS - try these steps and see the logs for clues HOT 3
- macOS: Chrome session created by init() cannot access disk(?) - user resolved HOT 2
- Image matching issues - try using vision() for custom commands and check SikuliX logs HOT 1
- How do I use rpa.init() in PyScript or Pyodide? - try this local hacks to see if they work HOT 2
- After python is packaged as an exe, an error occurs - try using .bat .cmd or shell script HOT 1
- Using reCAPTCHA keys to bypass - those are for the actual website owner for testing HOT 5
- Text not found - r.click() with OCR text by using "Text I want to click on.png" syntax HOT 7
- Out of memory problem - Chrome browser is memory hog, can explore that angle HOT 6
- Linux环境下运行 - pending replication details (maybe can't connect to Chrome) HOT 11
- Will there be support for automation of desktop apps - already, visual automation HOT 2
- snap() captures whole page instead of element - can't replicate in Mac/Ubuntu HOT 7
- Correct estimation of the operation execution time HOT 2
- The problem with Cyrillic in r.keyboard()
- "Speeding up" the search for objects on the screen. HOT 2
- During visual automation, when Chrome pops up, it blocks the program on the desktop
- frame() does not work properly when crossing domain
- use document for context
- dom() returns empty string
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rpa-python.