174 Commits

Author SHA1 Message Date
Puyodead1
5ec615e4e3 Updates and bug fixes
+ Fixed mis-named variable
+ Removed unused ``working_dir`` code
+ Fixed issue with course info feature not working
+ Added versioning system to help with debugging
+ Updated requirements file
2021-08-08 13:40:23 -04:00
Puyodead1
1f72e875f5 Update main.py 2021-08-04 14:56:48 -04:00
Puyodead1
c8945b8091 Update README
+ added note about bearer token from env being deprecated
+ updated example commands to reflect code changes
2021-08-02 20:53:07 -04:00
Puyodead1
845c0bde58 restructure method parameters
+ made all variables global so we don't have to keep passing them to methods
+ renamed ``concurrent_downloads`` to ``concurrent_connections``
+ added ``use_mkv`` option
+ fixed bug where keyfile was required to just use help command
+ updated ``README.md`` to reflect code changes
2021-08-02 20:45:48 -04:00
Puyodead1
6d4d93c9d8 fix: issue with hls downloads being deleted during cleanup process
Encrypted HLS Files were being downloaded with the same name as the final merged lecture causing it to be removed during the cleanup process. To fix this, ``.encrypted`` is now appended to the encrypted files.
2021-07-30 12:35:52 -04:00
Puyodead1
400316e1b3 Fix non-drm lectures not having proper file extension 2021-07-22 12:04:31 -04:00
Puyodead1
171f7b7719 bug fixes 2021-06-28 14:50:56 -04:00
Puyodead1
59b6419ade change directory to chapter directory instead of using full path 2021-06-28 14:28:16 -04:00
Puyodead1
6d0d3edf78 add better error handling to handle_segments method to catch failed downloads, the program will no longer exit 2021-06-27 21:51:42 -04:00
Puyodead1
4c0f4d2225 Merge branch 'master' of https://github.com/Puyodead1/udemy-downloader 2021-06-18 16:54:44 -04:00
Puyodead1
d9a72c8878 Limit the max characters for course and lecture names to 255 due to windows having a max of 260 2021-06-18 16:54:34 -04:00
Biplob Sutradhar
d7df8b18b5
without flag run ffmpeg, mp4decrypt stderr streem 2021-06-06 21:36:06 +06:00
Puyodead1
a7c02ca6ac
Revert "Update main.py" 2021-06-05 19:33:50 -04:00
mthibaut-hbc
3266b2a70c
Update main.py
Disable ipv6 for ariac2 to prevent "A socket operation was attempted to an unreachable network" error
2021-06-05 14:51:50 +02:00
Puyodead1
4ac49ec30d should i even add a commit message at this point? 2021-06-03 12:37:32 -04:00
Puyodead1
d7bfdda82e
Remove unused variable 2021-06-01 17:52:45 -04:00
Puyodead1
1d43d19a47
Merge pull request #27 from Puyodead1/feat-ytdlp
Feat: YT-DLP
2021-06-01 10:18:41 -04:00
Puyodead1
1d51b9be2f Fix: subscribed courses url missing portal name variable 2021-06-01 10:15:16 -04:00
Puyodead1
31e3802cb1 Fix: Append asset id to filename of assets
Fixes #25
2021-06-01 09:05:07 -04:00
Puyodead1
108d3bd19a Reduce max number of current downloads a user can specify 2021-05-30 17:34:03 -04:00
Puyodead1
2afef1cb41 Feat: Switch to yt-dlp for downloading HLS streams so we can use Aria2c
+ HLS streams are now downloaded with yt-dlp
- Removed FFMPEG download class
+ Added a new argument ``-cd``,``--concurrent-downloads`` to specify the max number of segments downloading at a time (default is 10)
+ Updated README to reflect code changes
2021-05-30 17:32:22 -04:00
Puyodead1
60addf51d9
Fix: FFMPEG check not being called
Resolves #23
2021-05-30 17:25:38 -04:00
Puyodead1
56e719b59f Feat: Switch to yt-dlp to avoid windows command line limitations 2021-05-30 16:49:29 -04:00
Puyodead1
c90f9c7584 Merge branch 'feat_performance_usage_improvements' 2021-05-28 23:07:59 -04:00
Puyodead1
9f3bda6c6c Revert "Merge branch 'master' into feat_aria2c"
This reverts commit e6dcde0335e8fdd7278dc72e9233034a5efc2748, reversing
changes made to 1ad4f1eddee0e34d028e3e74bf331a92a8388a36.
2021-05-28 23:05:54 -04:00
Puyodead1
e6dcde0335 Merge branch 'master' into feat_aria2c 2021-05-28 23:04:56 -04:00
Puyodead1
1ad4f1edde Feat: Info argument
+ Added info argument to print course information
+ Updated spacing of some text to be more 'tree' like and easier to read
2021-05-28 16:59:52 -04:00
Puyodead1
66aad0dc50 Fix: 1080p not being downloaded when selected 2021-05-28 15:28:03 -04:00
Puyodead1
1fa5bdba90 Fix: caption files having duplicated file extension 2021-05-28 10:19:37 -04:00
Puyodead1
6a2f237969
Add missing urls and methods
"My Courses" and collections
2021-05-28 10:09:50 -04:00
Puyodead1
4d428ea89d Add missing urls and methods for fetching "My Courses" and collections 2021-05-28 10:09:21 -04:00
Puyodead1
ee7be61f6a save external links 2021-05-28 09:42:40 -04:00
Puyodead1
f6ea730215 Remove unused variable and update some strings 2021-05-28 09:31:09 -04:00
Puyodead1
88c32ea55d Add checks for external tools a bug where assets would have their extension appended twice 2021-05-28 09:25:08 -04:00
Puyodead1
cffbcbaa0a Fix: TypeError when exception is caught by handle_segments method 2021-05-28 09:04:17 -04:00
Puyodead1
758f78831b Fix: incorrect worst quality being downloaded instead of best for non-drm videos with auto quality selection 2021-05-28 08:49:11 -04:00
Puyodead1
354b85e142 Fix downloaded files missing file extensions 2021-05-28 08:44:26 -04:00
Puyodead1
d20f15fb6a Use aria2c for asset downloading and non-drm lectures 2021-05-28 08:36:54 -04:00
Puyodead1
05c6c84d55 Remove unused function 2021-05-28 08:12:51 -04:00
Puyodead1
10b22a6e0b
Remove debug print 2021-05-27 22:02:45 -04:00
Puyodead1
56a1994443 remove a debug print 2021-05-27 21:59:12 -04:00
Puyodead1
3cc22520c8 Added Aria2c
Aria2c is now used for downloading segments as fast as possible (Closes #20)
2021-05-27 21:18:40 -04:00
Puyodead1
67748301de Renamed ffmpeg.py so it doesnt conflict with the ffmpeg command
Removed the .exe from ffmpeg commands and renamed ffmpeg.py to pyffmpeg.py so that the program will still work on linux based systems and not try to execute the ffmpeg python file
2021-05-27 18:28:06 -04:00
Puyodead1
6c2690b856 Fixed an unexpected error where the program would try to execute the ffmpeg.py file instead of the .exe during mux process 2021-05-27 18:22:51 -04:00
Puyodead1
f8521fd84c remove todo tag 2021-05-27 18:10:38 -04:00
Puyodead1
5ffef4736e HLS parsing for 1080p+ quality
+ Added a new command argument ``--skip-hls`` to skip parsing hls playlists
+ Updated README to reflect code changes
2021-05-27 17:38:29 -04:00
Puyodead1
b7b27419fd Properly catch connection error and retry (maybe) 2021-05-26 23:39:09 -04:00
Puyodead1
b667420dc2 Removed unused method, update description for quality argument 2021-05-26 23:28:49 -04:00
Puyodead1
2667629c93 Big Changes
- Removed the old ``dashdownloader_multisegment.py`` file
- Removed the ``downloader.py`` file
+ Added missing requirement to ``requirements.txt``
+ Added sanitization class
+ Updated ``vtt_to_srt.py`` to use path.join for better cross-platform support
+ Updated README to reflect code changes
- Removed the quality restriction since there are some wacky non-standard qualities and I can't possibly predict and list them all :P
+ Changed the way fallback qualities are selected so it selects the closest quality to the requested one (ex. you want 576 but the closest are 480 and 720, 576 will be selected since its the closer to 576)
+ Switched to sessions
+ Program no longer quits if decryption key isn't found, we continue downloading segments, unencrypted video, and assets
+ Program will quit before starting downloads if the keyfile doesn't exist
+ Added an argument to keep vtt caption files ``--keep-vtt``
+ Properly handle large courses (code credit to r0oth3x49) (Fixes #18)
+ Updated parsing for course data (modified from code by r0oth3x49)

This update should be considered as unstable, it will probably have problems. If you find an issue, please create a GitHub issue.
2021-05-26 23:18:52 -04:00
Biplob Sutradhar
5af8a95925
Failed to parse creation_time fix both plf 2021-05-25 16:19:12 +06:00