Changes to the YouTube Shorts Scraper.
Dates record source changes, not Apify publication dates.
- Explain
stopped status and stoppedEarly, including why partial: false does not prove that all requested channels were processed.
- Document the required
short pay-per-event hook and budget limits. Pricing is not enabled or set by the code.
- Replace the Unreleased section with dated change entries.
- Collect public Shorts from 1–5 YouTube channels, with newest-first pagination and a configurable limit of 1–10,000 results per channel (default: 100).
- Return video IDs, URLs, titles, descriptions, publication dates, engagement counts, channel details, subscriber counts, and hashtags.
- Support optional proxy configuration. Direct connections remain the default.
- Skip videos already saved in the run's dataset when restarting the same run.
- Record per-channel results and errors in
RUN-SUMMARY, including whether results are partial.
- Support a
short pay-per-event hook and stop collecting when its run budget is exhausted. If pay-per-event pricing is enabled, the short event must be configured or the run fails. Pricing is not enabled or set by the code.
- Convert compact subscriber labels such as
1.43K into numeric values such as 1430. Preserve the original label in subscriberCountText and mark converted values with subscriberCountIsApproximate: true and a warning. These values remain approximate.
- Simplify the input form by removing duplicate integration fields and the sorting control, and moving proxy configuration to Advanced settings. Existing API aliases (
channelUrls and maxShortsPerChannel) and the NEWEST sorting input remain supported.
- Return
0 when YouTube explicitly displays zero likes on the default like button. Unavailable or rounded like counts remain null.
- Extract hashtags from YouTube's displayed hashtag links, preserving the
# prefix and display order and removing duplicates. Do not treat location links or every hashtag in a title or description as displayed hashtags.
- Isolate video failures so remaining videos can still be processed. Preserve collected results after a channel or pagination failure and continue with the next channel.
- Fail runs with errors and no valid results, while retaining partial results when some videos succeed. Storage or charging failures still stop the run.
- Rewrite the README in English for general users, with input examples, output fields, data accuracy notes, and partial-result handling, and add a changelog.