Should i learn JavaScript for better UI Automation?

I was thinking what can i learn more in rpa , i was thinking web scraping is a huge part of rpa/UiPath, but sometimes there are cases where a javascript code performs better than UiPath , so what you guys suggest , should i also learn javascript ?

Also i was thinking , how big is the web scraping market , can anyone give this out of scope asnwer?

I think For RPA
it is better to learn .net for linq
basics of java script can be a plus for ui automation
but we have got CV activities too for this

Hope this helps
Usha

Hello @sagar.raval

  1. Learning JavaScript can complement your skills, especially for web automation tasks and handling complex web applications.
  2. The web scraping market is substantial, with applications in data extraction, research, and analysis across industries. It continues to grow.

Thanks & Cheers!!!

Basic C# or vb.net, REGEX and X-Path selectors to understand HTML DOM would be always helpful, like the cherry on the cake.

definitely, i use javascript for complex web scraping simply because it works a lot faster than UiPath

for example, there are some tables where the information you need is hidden in tooltips / popups, so the “Table extraction” feature will not be able to capture those, and you would have to slowly loop over each row to capture the data in these tooltips

however by using javascript im able to quickly capture all the data regardless of how many rows there are.

note that you should not write all the code inside javascript,
just write functions that accomplish a certain task that UiPath cannot
e.g. “Scrape Data In One Page And Return Datatable”

then you need and call these components from UiPath to ensure that the logging / exception handling is handled from the UiPath side

Here is an example javascript that scrapes a page in a job website
it will return the result in this format
[{"Date Posted":"text","Link for application":"s1","Job Title":"s1"},{"Date Posted":"text","Link for application":"s1","Job Title":"s1"}]

then in UiPath you can use this
newtonsoft.json.jsonconvert.deserializeObject(of datatable)(jsResult)
to convert the result to a datatable variable

function(e){
	
  const jobList = document.getElementsByClassName("cardOutline");
  const jobDetails = [];
  for (let i = 0; i < jobList.length; i++) {
    const dict = {};
    const item = jobList[i];
    dict["Date Posted"] = datePosted;
    dict["Link for application"] = item.querySelector(".jobTitle a").href;
    dict["Job Title"] = item.querySelector(".jobTitle").innerText;	
    jobDetails.push(dict);
  }

  return JSON.stringify(jobDetails);
}
1 Like