TikTok Public Playlist Scraper
Pricing
from $2.99 / 1,000 playlists
TikTok Public Playlist Scraper
Extract public TikTok playlist or profile page metadata, visible links, and visible video URLs from public URLs or usernames.
Pricing
from $2.99 / 1,000 playlists
Rating
0.0
(0)
Developer
w3crawler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
TikTok Public Playlist Page Scraper
Extract public TikTok playlist or profile-page metadata from public URLs or usernames. The Actor uses a public reader representation first and then direct HTTP, parses title, creator, playlist identifier/title, images, bounded page text, and visible video links, and stores one record per target page.
It does not use cookies, discover every playlist for a profile, fetch each video, or access private content.
Example input
{"playlistUrls": ["https://www.tiktok.com/@natgeo/playlist/Cinematic-7509464647364283178"],"maxItems": 2}
Profile mode can use usernames:
{"usernames": ["natgeo"]}
If no URL or username is supplied, the Actor uses three representative public playlist/profile pages. maxItems limits the number of target pages requested.
Example output
{"recordType": "tiktok-playlist","status": "success","dataAvailable": true,"source": "tiktok.com","provenance": "public_tiktok_playlist_or_profile_page","sourceTransport": "jina-reader","extractionMethod": "public_page_text_and_post_links","targetUrl": "https://www.tiktok.com/@natgeo/playlist/Cinematic-7509464647364283178","username": "natgeo","playlistId": "Cinematic-7509464647364283178","playlistTitle": "Cinematic","postCount": 2,"postsAvailable": true,"posts": [{ "url": "https://www.tiktok.com/@natgeo/video/1234567890", "videoId": "1234567890" }],"scrapedAt": "2026-08-18T00:00:00.000Z"}
posts contains visible public video links found in the page representation. Those videos are not individually fetched. If a page cannot be retrieved, a tiktok-playlist-access-diagnostic or request diagnostic is stored and OUTPUT reports the failure.
Input
playlistUrls(array, optional): Public HTTPS TikTok playlist URLs or profile URLs.usernames(array, optional): Public TikTok usernames, with or without@; converted to profile URLs.maxItems(integer, 1–10): Maximum unique playlist/profile pages to request. Default:10.
The historical inputs for playlist IDs, metadata/posts modes, posts-per-playlist, and playlists-per-profile were removed because this implementation does not implement those operations.
Output and storage
Playlist/profile page records and diagnostics are written to the default dataset. The Output tab links to the dataset and to OUTPUT in the default key-value store.
OUTPUT contains requested and processed target counts, usable record count, failed target URLs, and final status. It does not claim a count of every video in a playlist.
Limitations and cost
The Actor makes at most one public reader request and one direct page request per target. TikTok page markup and visible link availability can change. A profile page is represented as a profile-page record; it is not a playlist enumeration. Missing values are omitted.
Apify compute and public HTTP traffic are the main costs. Start with one target and a small maxItems value, and avoid high-frequency retries.
FAQ and disclaimer
Does it return every playlist video?
No. It returns only visible public video links found in the retrieved page representation.
Why did the transport show jina-reader?
The public reader representation is tried first because TikTok may return a challenge or script-heavy page to direct clients. The transport is recorded for traceability.
Does it access private profiles?
No. It requests public pages only and does not bypass authentication or access controls.
Use public data for a legitimate purpose, follow TikTok and r.jina.ai terms and robots guidance, and review privacy and data-protection obligations. For support, use the Actor Issues tab.