<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>YouTubeの文字起こしを取得するブックマークレット on ゆきんこの勉強法</title>
		<link>https://benkyosukisuki.com/tags/youtube%E3%81%AE%E6%96%87%E5%AD%97%E8%B5%B7%E3%81%93%E3%81%97%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E3%83%96%E3%83%83%E3%82%AF%E3%83%9E%E3%83%BC%E3%82%AF%E3%83%AC%E3%83%83%E3%83%88/</link>
		<description>Recent content in YouTubeの文字起こしを取得するブックマークレット on ゆきんこの勉強法</description>
		<generator>Hugo</generator>
		<language>ja-jp</language>
		
		
		
		
			<lastBuildDate>Thu, 12 Nov 2026 16:09:53 +0900</lastBuildDate>
		
			<atom:link href="https://benkyosukisuki.com/tags/youtube%E3%81%AE%E6%96%87%E5%AD%97%E8%B5%B7%E3%81%93%E3%81%97%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E3%83%96%E3%83%83%E3%82%AF%E3%83%9E%E3%83%BC%E3%82%AF%E3%83%AC%E3%83%83%E3%83%88/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>YouTubeの文字起こしを取得するブックマークレット</title>
				<link>https://benkyosukisuki.com/software/2026-11-10-21-45-33-09-00/</link>
				<pubDate>Tue, 10 Nov 2026 21:45:33 +0900</pubDate>
				<guid>https://benkyosukisuki.com/software/2026-11-10-21-45-33-09-00/</guid>
				<description>&lt;h2 id=&#34;youtubeの文字起こしを取得するブックマークレット&#34;&gt;YouTubeの文字起こしを取得するブックマークレット&lt;/h2&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;javascript:(async()=&amp;gt;{try{const sleep=ms=&amp;gt;new Promise(r=&amp;gt;setTimeout(r,ms));const findPanel=()=&amp;gt;Array.from(document.querySelectorAll(&amp;#39;ytd-engagement-panel-section-list-renderer&amp;#39;)).find(p=&amp;gt;p.getAttribute(&amp;#39;target-id&amp;#39;)===&amp;#39;engagement-panel-searchable-transcript&amp;#39;||p.textContent.includes(&amp;#39;文字起こし&amp;#39;));let panel=findPanel();if(!panel||panel.getAttribute(&amp;#39;visibility&amp;#39;)!==&amp;#39;ENGAGEMENT_PANEL_VISIBILITY_EXPANDED&amp;#39;){const exp=document.querySelector(&amp;#39;#expand&amp;#39;);if(exp)exp.click();await sleep(400);const btn=Array.from(document.querySelectorAll(&amp;#39;button&amp;#39;)).find(b=&amp;gt;b.textContent.includes(&amp;#39;文字起こしを表示&amp;#39;)||b.getAttribute(&amp;#39;aria-label&amp;#39;)?.includes(&amp;#39;文字起こし&amp;#39;));if(btn){btn.click();for(let i=0;i&amp;lt;15;i++){await sleep(300);panel=findPanel();if(panel&amp;amp;&amp;amp;panel.innerText.length&amp;gt;100)break;}}}if(!panel||panel.innerText.length&amp;lt;50){alert(&amp;#39;文字起こしパネルが取得できません。手動で「文字起こしを表示」を開いてから実行してください。&amp;#39;);return;}const raw=panel.innerText;const lines=raw.split(&amp;#39;\n&amp;#39;).map(l=&amp;gt;l.trim()).filter(l=&amp;gt;l&amp;amp;&amp;amp;!/^\d{1,2}:\d{2}(:\d{2})?$/.test(l)&amp;amp;&amp;amp;!/^(?:\d+\s*時間\s*)?(?:\d+\s*分\s*)?\d+\s*秒$/.test(l)&amp;amp;&amp;amp;![&amp;#39;文字起こし&amp;#39;,&amp;#39;文字起こしを検索&amp;#39;,&amp;#39;タイムスタンプを切り替える&amp;#39;,&amp;#39;日本語&amp;#39;,&amp;#39;自動生成&amp;#39;,&amp;#39;すべて&amp;#39;].includes(l)&amp;amp;&amp;amp;!l.includes(&amp;#39;で検索&amp;#39;));const output=&amp;#39;以下を要約してください。\n\n&amp;#39;+lines.join(&amp;#39;\n&amp;#39;);await navigator.clipboard.writeText(output);alert(&amp;#39;コピー完了（&amp;#39;+lines.length+&amp;#39;行）&amp;#39;);}catch(e){alert(&amp;#39;エラー: &amp;#39;+e.message);}})();&#xA;&lt;/code&gt;&lt;/pre&gt;</description>
			</item>
	</channel>
</rss>
