linkedIn learning video download

Allows to download learning videos you see on LinkedIn. Must be logged in.

当前为 2018-05-16 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name linkedIn learning video download
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.8
  5. // @description Allows to download learning videos you see on LinkedIn. Must be logged in.
  6. // @author rightDroid
  7. // @include https://www.linkedin.com/learning/*
  8. // @require http://code.jquery.com/jquery-latest.js
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12.  
  13. $('body').ready(function(){
  14. (function() {
  15. var download_button = `<li class="course-banner__action-item download_video_button">
  16. <button title="Download video" class="disabled add-menu-dropdown__trigger btn-tertiary btn-large dropdown-trigger ember-view"><li-icon aria-hidden="true" type="ribbon-icon" size="large"><svg class="svg-icon" viewBox="0 0 20 20">
  17. <path d="M17.064,4.656l-2.05-2.035C14.936,2.544,14.831,2.5,14.721,2.5H3.854c-0.229,0-0.417,0.188-0.417,0.417v14.167c0,0.229,0.188,0.417,0.417,0.417h12.917c0.229,0,0.416-0.188,0.416-0.417V4.952C17.188,4.84,17.144,4.733,17.064,4.656M6.354,3.333h7.917V10H6.354V3.333z M16.354,16.667H4.271V3.333h1.25v7.083c0,0.229,0.188,0.417,0.417,0.417h8.75c0.229,0,0.416-0.188,0.416-0.417V3.886l1.25,1.239V16.667z M13.402,4.688v3.958c0,0.229-0.186,0.417-0.417,0.417c-0.229,0-0.417-0.188-0.417-0.417V4.688c0-0.229,0.188-0.417,0.417-0.417C13.217,4.271,13.402,4.458,13.402,4.688"></path>
  18. </svg> </li-icon>
  19. <span class="text" aria-hidden="true">Download</span>
  20. <span class="visually-hidden">Download Video</span>
  21. </button></li>`;
  22. addDownloadButton = function(){
  23. $('.course-banner__actions').prepend(download_button);
  24. $('li.download_video_button > button').wrap('<a href="#"></a>');
  25. $('li.download_video_button').off();
  26. $('li.download_video_button').unbind();
  27. $('li.download_video_button').children().off();
  28. $('li.download_video_button').children().unbind();
  29. };
  30. checkIfReadyToLoad = function(){
  31. if($('.course-banner__actions').length && $('.download_video_button').length == 0){
  32. addDownloadButton();
  33. }
  34. else{
  35. setTimeout(checkIfReadyToLoad,2000);
  36. }
  37. };
  38. checkIfReadyToLoad();
  39. checkForVideoPlayer = function(){
  40. if($('.video-container video').length){
  41. var vid_source = $('video').attr('src');
  42. $('.download_video_button > a').attr('href', vid_source);
  43. var vid_name = vid_source;
  44. $('.download_video_button > a').attr('download', vid_name);
  45. $('.download_video_button > a > button').removeClass('disabled');
  46. }
  47. else
  48. {
  49. $('.download_video_button > a > button').addClass('disabled');
  50. }
  51. };
  52. $('body').on('mouseover', 'li.download_video_button', function(){
  53. checkForVideoPlayer();
  54. });
  55. $('body').on('mouseover', '.course-body__content', function(){
  56. checkIfReadyToLoad();
  57. });
  58.  
  59. })();
  60.  
  61. });