YouTube рдкрд░ рд╡рд┐рдЪрд▓рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП Chrome рдПрдХреНрд╕рдЯреЗрдВрд╢рди

YouTube рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдордиреЛрд░рдВрдЬрди рдХреЗ рд▓рд┐рдП рд╣реА рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдХреБрдЫ рднреА рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


YouTube рдкрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╡реАрдбрд┐рдпреЛ рдХреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдЦрддрд░рдирд╛рдХ рднреА рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ рд╡рд┐рдЪрд▓рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡реАрдбрд┐рдпреЛ рд╣реИрдВ (рд╡реАрдбрд┐рдпреЛ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдирд╣реАрдВ) рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВред




рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░, рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд┐рд╖рдп рдкрд░ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦрдиреЗ рд╕реЗ рдердХ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣рд╛рдВ рдЖрдк рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЛ рд╡рд┐рдЪрд▓рд┐рдд рдХрд░рдХреЗ рдкрдХрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ YouTube рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдЙрд╕ рдкрд░ рдЕрдзрд┐рдХ рд╕рдордп рдмрд┐рддрд╛рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдЕрдзрд┐рдХ рд▓рд╛рднрджрд╛рдпрдХ рд╣реИ ред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╕рд░реНрдл рд╡реНрдпрд░реНрде рдореЗрдВ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реИред


рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди


рдЖрдк YouTube рдХреЗ рд▓рд┐рдП (рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдФрд░ рдордиреЛрд░рдВрдЬрди рдХреЗ рд▓рд┐рдП) рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЦрд╛рддреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдЕрдиреБрдЪрд┐рдд рд╡реАрдбрд┐рдпреЛ рдХреЛ рдлреЗрдВрдХрдиреЗ рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рдлрд╛рд░рд┐рд╢ рдкреНрд░рдгрд╛рд▓реА рди рдХреЗрд╡рд▓ рдЖрдкрд╕реЗ рд╕реАрдЦрддреА рд╣реИ, рдмрд▓реНрдХрд┐ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рднреА рдХреЛ рдЗрд╕ рд░рдгрдиреАрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ред


рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдЖрдк рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЧреИрд░-рд╡рд┐рд╖рдпрдЧрдд рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░реЗрдЧрд╛ред


рд╡рд┐рдЪрд╛рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди


рдкрд╣рд▓реА рдЪреАрдЬрд╝ рдЬреЛ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрддреА рд╣реИ рд╡рд╣ рд╣реИ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ, рдЯреЗрдХреНрд╕реНрдЯ рд╡рд░реНрдЧреАрдХрд░рдг рдЗрддреНрдпрд╛рджрд┐ред


. , тАФ .


, "-" , .


тАФ chrome , , . , .



Chrome . manifest.json:


"content_scripts": [
    {
      "matches": ["https://www.youtube.com/*"],
      "css": ["styles.css"],
      "js": ["page-script.js"]
    }
],

, . :


//   
document.querySelector('h1'), 
//   
document.querySelector('#description'), 
//  
document.querySelectorAll('ytd-compact-video-renderer')

css , :


.youtube-stay-focused__blur {
    filter: blur(5px) grayscale(100%);
    opacity: 0.3;
}

.youtube-stay-focused__blur:hover {
    filter: none;
    opacity: 1;
}


, .



.


TF-IDF, BM25 , 0.




. , , ( ).


"" .



"":


  • , ..;
  • ;
  • "#", "$", ..;
  • , ;
  • ;
  • , trailer, audio, video ..;


:


"     ?" 
=> 
["", "", "", "", "", "", "?"]


- , .. :


, , , ,  => 

, . , , .


. npm . natural, https://www.npmjs.com/package/natural, nodejs ( fshttps://www.npmjs.com/package/fs), !


const porterStemmerRu = require('natural/lib/natural/stemmers/porter_stemmer_ru');
const porterStemmer = require('natural/lib/natural/stemmers/porter_stemmer');
// ...
const stem = (words) =>
  words
    .map((word) => porterStemmerRu.stem(word))
    .map((word) => porterStemmer.stem(word));


"     ?"
=>
["", "", "", "", ""]

.


.



Chrome YouTube.




.


рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХреНрд░реЛрдо рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд, рдЖрдк рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдЕрднреА рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
https://chrome.google.com/webstore/detail/youtube-stay-focused/enhfmpfmofdnhelhegdadanoaomlcieen


рдХреМрди рдЯрд┐рдкреНрдкрдгреА рдпрд╛ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рдмреЗрд╣рддрд░ рд╕реНрд╡рд╛рдЧрдд рдХрд░рдирд╛ рдЬрд╛рдирддрд╛ рд╣реИ;)


рдЕрдкрдиреЗ рд╕рдордп рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВред


All Articles