As I researched the smartest way would be to use an API but when using cURL I can find all required information in the output but its a bit messy.
curl https://www.youtube.com/user/HowdiniGuru/videos | grep "watch?"
returns all required blocks that contain video urls:
<h3 class="yt-lockup-title "><a class="yt-uix-sessionlink yt-uix-tile-link spf-link yt-ui-ellipsis yt-ui-ellipsis-2" dir="ltr" title="Breaking: MLA Sarwan Singh Phillaur resigned from SAD" aria-describedby="description-id-18618" data-sessionlink="ei=fHsvWKztM8OouALZlJ24Cg&feature=c4-videos-u&ved=CDkQlx4iEwism5ewqLPQAhVDFE4KHVlKB6comxw" href="**/watch?v=fDqv1-kYGPI**">Breaking: MLA Sarwan Singh Phillaur resigned from SAD</a><span class="accessible-description" id="description-id-18618"> - Duration: 43 seconds.</span></h3>
But having difficulties to have only /watch? parts to get to the output.
curl https://www.youtube.com/user/HowdiniGuru/videos | grep "watch?" | cut -f4 -d"=" | grep class | cut -f1 -d'"'
Does the job but it isnt very efficient as I can imagine.
cURL is not the right tool for this job:
lynx -dump -listonly -nonumbers https://www.youtube.com/user/HowdiniGuru/videos |
grep watch