data / bulk.html
13ze's picture
Upload 27 files
35d63ba verified
---
layout: default
title: MW Metadata Bulk
script: youtube-metadata-bulk
---
<div class="container">
<p>
MW Metadata bulk grabs details about multiple YouTube videos, a playlist's videos, or a channel's public videos.
</p>
<p>
Submit a comma or whitespace separated list of multiple videos, playlists, or channels
</p>
<div class="input-group mb-3">
<input type="text" class="form-control" placeholder="https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw"
aria-label="https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw" aria-describedby="submit"
id="value" autocomplete="off">
<button class="btn btn-primary loading disabled" type="button" id="submit">
<span>Submit</span>
<span class="countdown"></span>
</button>
</div>
<div class="form-check">
<input class="form-check-input" type="checkbox" value="" id="createdPlaylists" autocomplete="off">
<label class="form-check-label" for="createdPlaylists">
Inspect videos in created playlists to find unlisted, private, and deleted videos (channels only)
</label>
</div>
</div>
{% include format_share.html %}
<div class="container mb-15">
<h2><span class="export">Export &</span> Share</h2>
<p class="export">Save this result as a zip file or load from a previous export. Drag and drop supported.</p>
<button class="btn btn-secondary export" id="export">
<span class="spinner"><span class="spinner-border spinner-border-sm" role="status"></span></span>
<span class="text"><i class="bi bi-download"></i>&nbsp;&nbsp;Export</span>
</button><span class="export">&nbsp;</span>
<button class="btn btn-secondary export" id="import" onclick="document.getElementById('importFileChooser').click()">
<span class="spinner"><span class="spinner-border spinner-border-sm" role="status"></span></span>
<span class="text"><i class="bi bi-upload"></i>&nbsp;&nbsp;Import</span>
<input id="importFileChooser" type="file" hidden/>
</button>
<div class="form-check export" style="margin:10px 0">
<input class="form-check-input" type="checkbox" value="" id="includeThumbs" autocomplete="off">
<label class="form-check-label" for="includeThumbs">
Include thumbnails on export (this may take a long time)
<span id="thumbProgress" class="orange"></span>
</label>
</div>
<p class="export">Contains file(s)</p>
<ul class="export">
<li>about.txt - Metadata about this result.</li>
<li>videos.json - Array of all raw video data.</li>
<li>channels.json - Array of all raw channel data.</li>
<li>playlists.json - Array of all raw playlist data.</li>
<li>unavailable.json - Basic data for unavailable videos.</li>
<li>✱.csv - Data from each table section below.</li>
<li>thumbs/✱.png - Thumbs if available.</li>
</ul>
<p class="export"></p>
<p>Share this result:</p>
<div class="input-group" style="max-width: 226px;">
<input type="text" class="form-control" aria-describedby="copy" id="shareLink" autocomplete="off">
<button class="btn btn-primary clipboard" type="button" data-clipboard-target="#shareLink"><i
class="bi bi-clipboard"></i></button>
</div>
<p style="margin-top: 10px">
<a target="_blank" href="https://github.com/mattwright324/youtube-metadata/discussions/150">
What happened to export?
</a>
</p>
</div>
<div class="container mb-15">
<h2>Videos</h2>
<p>
List of all videos, playlist videos, or channel public uploads.
Customize columns to show more or less data as needed.
</p>
<div class="progress" style="margin-bottom:5px">
<div id="progressBar" class="progress-bar" role="progressbar" style="" aria-valuenow="0" aria-valuemin="0"
aria-valuemax="100">
<div class="label"></div>
</div>
</div>
<div id="progressText" style="width: 100%;text-align: center;">Idle</div>
<br>
<label for="column-options">Select column(s)</label>
<select id="column-options" multiple="multiple" hidden></select>
</div>
<div class="container-fluid mb-15">
<table id="videosTable" class="table table-striped table-hover" style="width:100%"></table>
</div>
<div class="container mb-15">
<h2>Tags</h2>
<p>Aggregate total tag counts on found videos.</p>
<table id="tagsTable" class="table table-striped table-hover" style="width:100%"></table>
</div>
<div class="container mb-15">
<h2>Geotags</h2>
<p>
Aggregate total geotag counts on found videos.
Want to visualize this data in a map?
Export this result and import the zip into
<a href="https://mattw.io/youtube-geofind" target="_blank">YouTube Geofind</a>!</p>
</p>
<table id="geotagsTable" class="table table-striped table-hover" style="width:100%"></table>
</div>
<div class="container mb-15">
<h2>Links</h2>
<p>
Aggregate total link counts in found video descriptions.
Be careful visiting what may show up here, by default results will not be hyperlinked for safety.
</p>
<div class="form-check mb-15">
<input class="form-check-input" type="checkbox" value="" id="makeHyperlinks" autocomplete="off"
onchange="bulk.toggleLinksColumn(0);bulk.toggleLinksColumn(1)">
<label class="form-check-label" for="makeHyperlinks">
Make them hyperlinks anyways
</label>
</div>
<table id="linksTable" class="table table-striped table-hover" style="width:100%"></table>
</div>
<div class="container mb-15">
<h2>Upload Frequency</h2>
<p>
Aggregate uploads frequency by hour and day.
Transformable to any timezone
(<a target="_blank" href="https://upload.wikimedia.org/wikipedia/commons/8/88/World_Time_Zones_Map.png">map</a>)
and filterable by year when activity occurred.
Guesstimate region using typical sleep/activity patterns, see change in behavior over time,
or see typical upload times in your own timezone.
</p>
<div class="row" style="margin: 0 0 1.5em 0">
<select id="offset" class="form-select" style="width:auto;margin-right:10px" autocomplete="off">
<option value="-1200">UTC βˆ’12:00</option>
<option value="-1100">UTC βˆ’11:00</option>
<option value="-1000">UTC βˆ’10:00</option>
<option value="-0930">UTC βˆ’09:30</option>
<option value="-0900">UTC βˆ’09:00</option>
<option value="-0800">UTC βˆ’08:00</option>
<option value="-0700">UTC βˆ’07:00</option>
<option value="-0600">UTC βˆ’06:00</option>
<option value="-0500">UTC βˆ’05:00</option>
<option value="-0400">UTC βˆ’04:00</option>
<option value="-0330">UTC βˆ’03:30</option>
<option value="-0300">UTC βˆ’03:00</option>
<option value="-0200">UTC βˆ’02:00</option>
<option value="-0100">UTC βˆ’01:00</option>
<option value="+0000" selected>UTC Β±00:00</option>
<option value="+0100">UTC +01:00</option>
<option value="+0200">UTC +02:00</option>
<option value="+0300">UTC +03:00</option>
<option value="+0330">UTC +03:30</option>
<option value="+0400">UTC +04:00</option>
<option value="+0430">UTC +04:30</option>
<option value="+0500">UTC +05:00</option>
<option value="+0530">UTC +05:30</option>
<option value="+0545">UTC +05:45</option>
<option value="+0600">UTC +06:00</option>
<option value="+0630">UTC +06:30</option>
<option value="+0700">UTC +07:00</option>
<option value="+0800">UTC +08:00</option>
<option value="+0845">UTC +08:45</option>
<option value="+0900">UTC +09:00</option>
<option value="+0930">UTC +09:30</option>
<option value="+1000">UTC +10:00</option>
<option value="+1030">UTC +10:30</option>
<option value="+1100">UTC +11:00</option>
<option value="+1200">UTC +12:00</option>
<option value="+1245">UTC +12:45</option>
<option value="+1300">UTC +13:00</option>
<option value="+1345">UTC +13:45</option>
<option value="+1400">UTC +14:00</option>
</select>
<select id="year" class="form-select" style="width:auto" autocomplete="off">
<option value="" selected>All years</option>
</select>
</div>
<div id="uploadFrequency"></div>
</div>
<div class="container mb-15">
<h2>Unavailable</h2>
<p>
Videos that are unavailable from channels (created playlists on), playlists, or videos.
They are either <a target="_blank" href="https://github.com/mattwright324/youtube-metadata/wiki/Deleted-and-Private-Videos">deleted or made private</a>.
Consider searching for user-made playlists to find more unavailable videos.
</p>
<div id="unavailable">
<div class="input-group mb-3" style="align-items: center;">
<button class="btn btn-secondary loading disabled" type="button" id="checkUnavailable" style="margin-right: 10px">
<span>Check Unavailable</span>
<span class="countdown"></span>
</button>
<span>Check Filmot for any archived metadata for unavailable videos.</span>
</div>
<div class="progress" style="margin-bottom:5px">
<div id="unavailableProgressBar" class="progress-bar" role="progressbar" style="" aria-valuenow="0" aria-valuemin="0"
aria-valuemax="100">
<div class="label"></div>
</div>
</div>
<div id="unavailableProgressText" style="width: 100%;text-align: center;">Idle</div>
<br>
</div>
<label for="unavailable-columns">Select column(s)</label>
<select id="unavailable-columns" multiple="multiple" hidden></select>
</div>
<div class="container-fluid mb-15">
<table id="unavailableTable" class="table table-striped table-hover" style="width:100%"></table>
</div>
<div class="container mb-15">
<h2>Other</h2>
<p>Other potentially useful aggregate data on found videos.</p>
<table id="otherTable" class="table table-striped table-hover" style="width:100%"></table>
</div>