Scrape Channel
+YouTube Video Importer
+Channel Source
+ +Scraped Videos
+Review the scraped results, uncheck anything you do not want, then import. Duplicate YouTube URLs are skipped.
+ +diff --git a/README.md b/README.md index 3568747..411c31a 100644 --- a/README.md +++ b/README.md @@ -43,6 +43,7 @@ Styled to match the existing `gate.php` / `index.php` dark theme exactly. │ ├── index.php ← Video list with search + pagination │ ├── add.php ← Add new video with uploaded or external URL sources │ ├── edit.php ← Edit video metadata + manage local/remote sources +│ ├── youtube_import.php ← Scrape a YouTube channel and import videos │ ├── settings.php ← Site settings, per-page count, password │ ├── login.php ← Admin login │ ├── logout.php ← Session destroy + redirect @@ -75,6 +76,10 @@ Styled to match the existing `gate.php` / `index.php` dark theme exactly. External URLs must use `http://` or `https://`. Uploaded files and remote URLs can be mixed on the same video. Recognized provider URLs such as YouTube, Vimeo, Dailymotion, Twitch, Facebook, TikTok, Instagram, X/Twitter, SoundCloud, Spotify, Google Drive, Wistia, Streamable, and Loom render through their embed players. +### Importing YouTube Channels + +Use **Admin → YouTube Importer** to paste a YouTube channel URL, `@handle`, or `UC...` channel ID. The importer scrapes the channel's `/videos` page, extracts video data from `ytInitialData`, previews the results, and imports selected videos as remote YouTube embed sources. Duplicate YouTube watch URLs are skipped. + ### Public Search The full catalogue page includes a public search for published videos only. Search matches video title, description, and slug; draft videos remain hidden. diff --git a/admin/add.php b/admin/add.php index d8eb502..5c85856 100644 --- a/admin/add.php +++ b/admin/add.php @@ -196,6 +196,10 @@ render_head('Add Video — Admin', ' Add Video + + + YouTube Importer +
Scrape Channel
+Channel Source
+ +Scraped Videos
+Review the scraped results, uncheck anything you do not want, then import. Duplicate YouTube URLs are skipped.
+ +