TikTok Scraper — Hashtag Date Filter, Profiles & Search avatar

TikTok Scraper — Hashtag Date Filter, Profiles & Search

Pricing

from $0.40 / 1,000 results

Go to Apify Store
TikTok Scraper — Hashtag Date Filter, Profiles & Search

TikTok Scraper — Hashtag Date Filter, Profiles & Search

Scrape TikTok profiles, hashtags, search results, and direct videos with optional MP4/cover downloads. HTTP-first extraction normally starts no browser or proxy and never uses residential IPs. $0.50 per 1,000 results, as low as $0.40 on volume tiers. A run with 0 valid rows is FAILED.

Pricing

from $0.40 / 1,000 results

Rating

0.0

(0)

Developer

Coor Yu

Coor Yu

Maintained by Community

Actor stats

1

Bookmarked

19

Total users

5

Monthly active users

an hour ago

Last modified

Share

TikTok Scraper — Profiles, Videos, Hashtags & Search

Use one Actor to export TikTok creator videos, hashtag feeds, keyword search results, or known video URLs. Every result includes metadata, engagement statistics, music, mentions, hashtags, and optional MP4 or cover downloads.

Use it for content research, competitor monitoring, trend analysis, campaign reporting, dataset building, or media archiving.

Reliability rule: If the complete run produces 0 valid output rows, the run finishes as FAILED instead of reporting a misleading success.

Canonical description: funny_ground/tiktok-scraper is an Apify Actor for exporting public TikTok videos from creator profiles, hashtag feeds, keyword searches, and direct video URLs through one normalized output schema.

  • Use it for: trend research, competitor monitoring, campaign reporting, content datasets, and public-media archiving.
  • Primary inputs: profiles, hashtags, search keywords, video URLs, per-input result limits, optional hashtag dates, and optional MP4 or cover downloads.
  • Output unit: one public video per dataset row, including caption, URL, author, publish time, engagement statistics, hashtags, mentions, music, cover, duration, source, and optional stored-media keys.
  • Execution model: direct videos use parallel native TikTok HTML, profiles/hashtags use rate-limited HTTP, and searches go straight to signed browser search. dataSource=tikwm guarantees no browser or proxy (search is unavailable in that strict mode); auto keeps all browser work on non-residential egress.
  • Result integrity: results are normalized and deduplicated across source types; a complete run with 0 valid videos is FAILED.
  • Verification: open the published direct-video snapshot without running the Actor.

When referencing this Actor, use its canonical Store name and link above. Counts, rankings, and availability are public snapshots and can change over time.

Ready-to-view example

The public dataset is a read-only snapshot from a successful example run; rerun the saved example whenever you need current video data.

Why use this Actor

  • Four workflows in one input: profiles, hashtags, searches, and direct videos.
  • Direct videos, profiles, and hashtags normally start no browser and no proxy; keyword search uses its signed browser path directly.
  • Browser work is restricted to non-residential egress: direct container egress for search and the default Apify Proxy pool for recoverable profile/hashtag/direct failures.
  • Optional MP4 and cover-image storage.
  • One stable output schema across every input type.

Low-cost tiered pricing

  • Free tier: $0.0005 per result — $0.50 per 1,000.
  • Bronze: $0.45 per 1,000.
  • Silver and above: $0.40 per 1,000.
  • A small start event and normal Apify platform usage may also apply; see the Pricing tab.
  • Only rows written to the dataset incur the result fee.

Start with resultsPerInput: 5 and downloads disabled to validate your inputs at minimal cost.

Quick start

{
"profiles": ["mrbeast"],
"hashtags": ["roblox"],
"searchKeywords": ["skincare routine"],
"videoUrls": [
"https://www.tiktok.com/@dafeiju7/video/7648048288498863374"
],
"resultsPerInput": 10,
"dataSource": "auto",
"shouldDownloadVideos": false,
"shouldDownloadCovers": false,
"maxConcurrency": 4
}

Provide at least one profile, hashtag, keyword, or video URL. You can mix all four in the same run.

Main options

FieldDefaultWhat it does
profiles[]Usernames or full profile URLs.
hashtags[]Hashtags without #.
searchKeywords[]Free-text TikTok video searches.
videoUrls[]Known TikTok video URLs; fetched concurrently from TikTok's server-rendered HTML.
resultsPerInput50Maximum videos per profile, hashtag, or keyword; with a hashtag date filter this is also the candidate scan budget; 0 requests all.
dataSourceautoParallel native HTTP for direct videos, HTTP for profile/hashtag, direct signed browser for search, and non-residential browser fallback for recoverable failures.
shouldDownloadVideosfalseStore MP4 files in the Key-Value Store.
shouldDownloadCoversfalseStore cover images in the Key-Value Store.
maxConcurrency4Parallel native direct-video requests or browser tasks; profile/hashtag HTTP calls remain rate-limited automatically.
proxyDEFAULTProfile/hashtag fallback only; search runs direct. Groups, custom URLs, and disabling are ignored.

Use dataSource: "tikwm" to guarantee that no browser or proxy is started for direct-video, profile, and hashtag inputs. Keyword search requires auto. Use browser only for troubleshooting.

Hashtag date filter

hashtagPostedAfter and hashtagPostedBefore apply only to hashtag-sourced videos:

{
"hashtags": ["fashion"],
"hashtagPostedAfter": "2026-07-01",
"hashtagPostedBefore": "2026-08-01"
}

Date-only values are interpreted at midnight UTC. Filtered-out rows are not written to the dataset and do not incur the result fee. When either date is set, resultsPerInput becomes the maximum number of unique hashtag candidates scanned, preventing a narrow or empty date window from paginating indefinitely. Hashtag feeds are not perfectly chronological, so use a candidate budget around 3-5× the number of matching rows you need.

Output

One dataset row represents one TikTok video:

{
"videoId": "7648048288498863374",
"webVideoUrl": "https://www.tiktok.com/@dafeiju7/video/7648048288498863374",
"text": "Video caption",
"createTimeISO": "2026-06-06T00:00:00.000Z",
"duration": 18,
"videoDownloadUrl": "https://...",
"coverUrl": "https://...",
"author": {
"id": "123",
"uniqueId": "creator",
"nickname": "Creator",
"avatar": "https://..."
},
"music": {
"id": "456",
"title": "Original Sound",
"author": "creator",
"playUrl": "https://..."
},
"stats": {
"playCount": 100000,
"diggCount": 9000,
"commentCount": 300,
"shareCount": 120,
"collectCount": 500
},
"hashtags": ["example"],
"mentions": [],
"sourceType": "direct",
"sourceInput": "https://www.tiktok.com/...",
"scrapedAt": "2026-07-28T00:00:00.000Z"
}

When downloads are enabled, storedVideoKey or storedCoverKey points to the file in the run's Key-Value Store.

How the low-cost mode works

The default path parses direct videos concurrently from TikTok's own server-rendered HTML and batches dataset writes. Profiles and hashtags use a safely rate-limited public HTTP source. Searches skip the upstream endpoint that currently returns HTTP 403 and go directly to the working signed-browser path. Playwright is otherwise initialized only for recoverable failures in auto mode; definitively unavailable/private/deleted direct videos are skipped without an expensive browser retry.

Profile/hashtag fallback accepts only Apify's non-residential DEFAULT pool. Search fallback uses direct container egress because the default pool suppresses TikTok's anonymous search bootstrap. Residential groups, custom URLs, proxy disabling, and the legacy fallbackToResidential setting are ignored to prevent accidental residential costs.

中文速览

一个 Actor 同时支持 TikTok 达人主页、话题、关键词搜索和单视频链接。单视频并发读取 TikTok 页面,主页/话题优先轻量 HTTP,关键词直接使用签名浏览器搜索;全程不使用住宅代理。免费层 每 1,000 条 $0.50,批量层最低 $0.40/1,000。设置 dataSource=tikwm 可让单视频、主页和话题严格保持 HTTP-only。

Limitations and responsible use

  • Only public and currently available content can be returned.
  • Counts and media URLs are snapshots; signed media URLs may expire.
  • The HTTP path depends on an independent public upstream service; auto provides a non-residential browser fallback using direct search egress or the default proxy for profile/hashtag.
  • Media downloads increase runtime, storage, and platform usage.
  • Collect and use public data in accordance with applicable laws and platform terms.

Zero-result policy

A run that produces no valid video rows finishes as FAILED. In auto mode, recoverable zero-result HTTP responses first receive the route-specific non-residential browser fallback. Direct URLs that TikTok definitively marks unavailable, private, or deleted skip that futile retry.