I do not feel comfortable to report bugs here as linkedin learning is also a microsoft product like github. Can you please move this project to gitlab.
$ python3 linkedin_learning.py
2020-02-23 11:27:19,997 asyncio DEBUG Using selector: EpollSelector
2020-02-23 11:27:19,998 root INFO [*] -------------Login-------------
2020-02-23 11:27:19,998 root INFO [*] Login step 1 - Getting CSRF token...
2020-02-23 11:27:20,539 root DEBUG [*] CSRF: 3522bda6-54d6-41b8-8114-3e2052afee5e
2020-02-23 11:27:20,539 root INFO [*] Login step 1 - Done
2020-02-23 11:27:20,539 root INFO [*] Login step 2 - Logging In...
2020-02-23 11:27:21,272 root INFO [*] Login step 2 - Done
2020-02-23 11:27:21,274 root INFO [*] -------------Done-------------
2020-02-23 11:27:21,274 root INFO [*] -------------Fetching Course-------------
2020-02-23 11:27:22,172 asyncio ERROR Unclosed connection
client_connection: Connection<ConnectionKey(host='www.linkedin.com', port=443, is_ssl=True, ssl=None, proxy=None, proxy_auth=None, proxy_headers_hash=-3461783210526392284)>
2020-02-23 11:27:22,172 root INFO [*] Fetching course Discovering Your Strengths
2020-02-23 11:27:22,174 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 7 Video no. 3
2020-02-23 11:27:22,174 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 2 Video no. 1
2020-02-23 11:27:22,174 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 7 Video no. 4
2020-02-23 11:27:22,175 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 1 Video no. 1
2020-02-23 11:27:22,175 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 8 Video no. 1
2020-02-23 11:27:22,176 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 1 Video no. 2
2020-02-23 11:27:22,176 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 3 Video no. 1
2020-02-23 11:27:22,177 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 2 Video no. 2
2020-02-23 11:27:22,177 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 3 Video no. 2
2020-02-23 11:27:22,177 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 3 Video no. 3
2020-02-23 11:27:23,027 root INFO [~] Writing 01 - Find career success and perform at your best.mp4
2020-02-23 11:27:23,041 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 4 Video no. 1
2020-02-23 11:27:23,048 root INFO [~] Writing 02 - What are strengths.mp4
2020-02-23 11:27:23,057 root INFO [~] Fetching course 'Discovering Your Strengths' Chapter no. 4 Video no. 2
Traceback (most recent call last):
File "linkedin_learning.py", line 234, in <module>
loop.run_until_complete(process())
File "/usr/lib/python3.6/asyncio/base_events.py", line 484, in run_until_complete
return future.result()
File "linkedin_learning.py", line 222, in process
await fetch_courses()
File "linkedin_learning.py", line 102, in fetch_courses
return await asyncio.gather(*map(fetch_course, COURSES))
File "linkedin_learning.py", line 116, in fetch_course
await fetch_chapters(course)
File "linkedin_learning.py", line 128, in fetch_chapters
await asyncio.gather(*chain.from_iterable(fetch_chapter(course, chapter) for chapter in course.chapters))
File "linkedin_learning.py", line 139, in fetch_video_or_wait
await fetch_video(course, chapter, video)
File "linkedin_learning.py", line 165, in fetch_video
video_url = data['elements'][0]['selectedVideo']['url']['progressiveUrl']
KeyError: 'url'
It only create directories without files.