12-07-23 01:57 PM
Greetings everyone,
I would like to pose today's question for discussion with wider audience.
In your experience, what types of use cases have you encountered or witnessed with Python and Blue Prism integration? Moreover, what potential use cases do you foresee for this integration that can bring huge value to automation projects?
I'm particularly excited to invite MVP @Mukesh Kumar join us for an expert discussion on this topic.
Please feel free everyone to share your valuable experiences, insights, and thoughts to enrich this thread! 💡
------------------------------
If I was of assistance, please vote for it to be the "Best Answer".
Thanks & Regards,
Tejaskumar Darji - https://www.linkedin.com/in/tejaskumardarji/
Technical Lead
------------------------------
14-07-23 05:59 PM
i have seen few organizations are not having external script integrating with blue prism and are more than happy to use native blue prism feature VBO. blue prism with python is really fruitful for the task where traditional blue prism VBO takes time.
Recently worked on a excel task where python script integrated with bp took script few min and working via VBO took an hour.
17-07-23 07:38 AM
I have tried a lot of thing with python. Complicated things can be achieved very easily. But the real challenge is to invoke of python script. Currently BP provides a VBO which is not that convenient and second thing is not easy to use. So if there is a proper way of use the same then it can be useful.
17-07-23 10:51 AM
Hello Tejas,
While numerous use cases exist, one area that I feel where we can get more benefit is extracting table data, texts from PDF files using a Python library. With the help of various third-party libraries, we can efficiently extract both tables and text from PDFs, enabling us to create an effective data extraction solution.
17-07-23 01:31 PM
Hi,
Very good topic to discuss about, especially when Python lives it's best days.
We have some use cases also where Python is in scope. We have tried the VBO from DX which is simple object to trigger Python (or another language) code via BP by providing Python platform's parts and local components. It is convenient until you face scaling, security and maintenance questions such as:
For the moment, we look into the compiled Python programs, which could be used in a flow as a simple executable. Then it is enough to have Python core (with studio, debuggers, etc.) on a limited deployment. where developers follow the application development standards and procedures. Then, once the executable is fully ready, use (launch) it in a BP flow as any other program. The inputs and outputs - limited by your imagination and real coding skills. With this approach you can hide a source of Python program from unauthorized eyes who can understand the logic, especially if the program is performing some very sensitive steps and contains company secrets. Executables are easier to control by group policies (i.e. AppLocker rules) and prevent them from unauthorized modifications and executions from restricted locations (i.e. Downloads, Desktop or any other low-priviledge location).
Open to hear other approaches.
17-07-23 02:02 PM
Hi Tejas,
When it comes to python handling larger data is way easier and faster than VB script. As python has got powerful packages dealing with Arrays. If possible we can use python script in place of custom VB script for data manipulation. Also instead of separate IDP tools python comes with Tesseract as its OCR which comes with packages installed will be an added advantage (results are to be compromised with this OCR).
As @Neeraj Kumar mentioned organisations prefer native BP features over scripts as maintenance becomes tougher if there's no python scripting people available.
Adding to @Amlan Sahoo I cannot see an option of passing parameters to script both input and output which is a current drawback for using a script as the data flow is not possible between the script and BP.
Python has got very powerful packages for AI & ML processing if we can try using these that will open the gates for lot of use cases where cognitive decisions are to be made in which RPA is limited.
------------------------------
Babjee Vangipurapu
Senior RPA Developer
Wonderbotz
India
------------------------------
17-07-23 02:49 PM
Those are some wonderful insights shared in above threads - I would consider python for quick time bound activities where speed of execution is of the essence as indeed people pointed out in the above threads - i.e. processing complex data in some form in a limited real time slot scenario -with additional flexibility to Image processing (QR reading, Object detection, PDF extractions, Quick Data Extractions from web etc) and many other areas- thinking of python scripts makes more sense - These capabilities could be available as external machine learning skills but again python allows you to build things on your own in a highly customised manner with N number of libraries to cater your automation requirements - integration of Python with Blue Prism can unlock even more intelligent automation possibilities with more complex use cases to consider for end to end automation.
An exemplary case of RPA for Python is TagUI -I am sure people might have seen or used, which indeed could be seen as one of the examples where speed just ticks off in whooping seconds : https://pypi.org/project/tagui/ , https://pypi.org/search/?q=&o=&c=Intended+Audience+%3A%3A+Developers
I would be highly interested to see - If something more convenient could be built or made available as native to Blue prism where a developer can include more of python might unlock potential use cases to go for in longer run.
16-06-24 06:20 PM
@Babjee24 wrote:Hi Tejas,
When it comes to python handling larger data is way easier and faster than VB script. As python has got powerful packages dealing with Arrays. If possible we can use python script in place of custom VB script for data manipulation. Also instead of separate IDP tools python comes with Tesseract as its OCR which comes with packages installed will be an added advantage (results are to be compromised with this OCR).
As @Neeraj Kumar mentioned organisations prefer native BP features over scripts as maintenance becomes tougher if there's no python scripting people available.
Adding to @Amlan Sahoo I cannot see an option of passing parameters to script both input and output which is a current drawback for using a script as the data flow is not possible between the script and BP.
Python has got very powerful packages for AI & ML processing if we can try using these that will open the gates for lot of use cases where cognitive decisions are to be made in which RPA is limited.
------------------------------
Babjee Vangipurapu
Senior RPA Developer
Wonderbotz
India
------------------------------I'd like to discuss a feasible method for passing parameters to a Python script from a Blue Prism object, which is indeed possible. Similar implementations have been successfully executed by passing SQL statements to Python scripts for ETL, SharePoint, PDF extraction, etc. The most effective method we've found is to pass parameters via the command line, utilizing a Python script VBO object. This object provides an option to pass arguments as input into Python, and you can use the Python print function to output results into a Data Item, preferably in JSON format for standardized results.
Should anyone require additional details, please inform me, and I could provide screenshots.
27-06-24 11:35 PM
That's a good method, another option is to expose your Python scripts as web services. This allows you to call your script with a HTTP request containing the required arguments.
You can either run this on every runtime resource, so nothing has to be exposed to the network. (Just send API calls to localhost.) Or a centralised API server can be utilised but this won't allow the scripts to interact with PDF's, files, etc. on the runtime resource unless you use network drives to store required files.