https://www.udemy.com/api-2.0/users/me/subscribed-courses/?ordering=-last_accessed&fields[course]=archive_time,buyable_object_type,completion_ratio,enrollment_time,favorite_time,features,image_240x135,image_480x270,is_practice_test_course,is_private,is_published,last_accessed_time,num_collections,published_title,title,tracking_id,url,visible_instructors&fields[user]=@min,job_title&page=1&page_size=12&is_archived=false
Save response as json object
run this in console.
json.results.forEach(x=>console.log(`${x.title};udemy;${x.completion_ratio};${x.last_accessed_time};${x.visible_instructors[0].title}`))
Paste in new notepad
save as .csv
Optionally add
sep=;
as line 1
call
/profile/data/completedcourses/karanbhandari
and
/profile/data/currentlylearning/karanbhandari
copy responses and run
json.forEach(x=>console.log(`${x.title};pluralsight;${x.percentComplete};${x.lastViewedTimestamp?x.lastViewedTimestamp:x.timeCompleted};${x.authors[0]?.displayName}`))
https://takeout.google.com/settings/takeout/downloads
Create new export
Deselect all
Unselect all types and only select Youtube history
Search for youtube>select
select JSON
Click on Next/proceed
Visit takeout after some time
Download
assign json as entire youtube json
then
let blacklist = ["hit","cardio","morning","property","hindi","deepak","melvin","song","choreo","danc",
"monkey","jcb","workout","dumb","icc","ipl","trailer","animal","fnp","car","phone","sams","onep","recipe",
"bjp","news","rhym","song","baby","melon","stretch","kettle"];
console.log(json.filter(x=>x.time.indexOf("2023")>-1).filter(x=>!blacklist.some(s => x.title.toLowerCase().includes(s))).length);
json.filter(x=>x.time.indexOf("2023")>-1).filter(x=>!blacklist.some(s => x.title.toLowerCase().includes(s))).forEach(x=>console.log(`${x.title};youtube;NA;${x.time};${x.titleUrl}`));