the source is what is returned from the request. you must parse the returned html to get the other elements. if the page uses javascript to render elements, you must execute this javascript. this will require parsing the html into a dom, and a javascript runtime. you code would need to implement the javascript to browser dom api.
now days, your code would host a headless chrome to do this. you can write you own wrapper for this or use one of the sdks like Selenium or Puppeteer.