Package: tuber 1.4.0

Gaurav Sood

tuber: Client for the YouTube API

Get comments posted on YouTube videos, information on how many times a video has been liked, search for videos with particular content, and much more. You can also scrape captions from a few videos. To learn more about the YouTube API, see <https://developers.google.com/youtube/v3/>.

Authors:Gaurav Sood [aut, cre], Kate Lyons [ctb], John Muschelli [ctb]

tuber_1.4.0.tar.gz
tuber_1.4.0.zip(r-4.7)tuber_1.4.0.zip(r-4.6)tuber_1.4.0.zip(r-4.5)
tuber_1.4.0.tgz(r-4.6-any)tuber_1.4.0.tgz(r-4.5-any)
tuber_1.4.0.tar.gz(r-4.7-any)tuber_1.4.0.tar.gz(r-4.6-any)
tuber_1.4.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html
DESCRIPTION |NEWS
card.svg |card.png
tuber/json (API)

# Install 'tuber' in R:
install.packages('tuber', repos = c('https://gojiplus.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/gojiplus/tuber/issues

Pkgdown/docs site:https://gojiplus.github.io

On CRAN:

Conda:

access-youtubecaptionvideoyoutubeyoutube-apiyoutube-oauth

10.34 score 189 stars 220 scripts 1.4k downloads 1 mentions 84 exports 33 dependencies

Last updated from:f3ceab73c6. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64OK136
source / vignettesOK202
linux-release-x86_64OK144
macos-release-arm64OK114
macos-oldrel-arm64OK92
windows-develOK103
windows-releaseOK102
windows-oldrelOK112
wasm-releaseOK130

Exports:%>%add_video_to_playlistanalyze_channelanalyze_trendsbulk_video_analysischange_playlist_titlecompare_channelscount_emojiscreate_playlistdelete_captionsdelete_channel_sectionsdelete_commentsdelete_playlist_itemsdelete_playlistsdelete_videosextract_emojisget_all_channel_video_statsget_all_commentsget_captionsget_channel_info_cachedget_channel_sectionsget_channel_statsget_comment_threadsget_commentsget_live_chat_messagesget_live_streamsget_playlist_item_idsget_playlist_item_videoidsget_playlist_itemsget_playlistsget_premiere_infoget_related_videosget_statsget_subscriptionsget_super_chat_eventsget_video_detailsget_video_thumbnailshas_emojiinsert_channel_bannerlist_abuse_report_reasonslist_caption_trackslist_captionslist_channel_activitieslist_channel_memberslist_channel_resourceslist_channel_sectionslist_channel_videoslist_guidecatslist_langslist_langs_cachedlist_my_channellist_my_videoslist_regionslist_regions_cachedlist_videocatslist_videocats_cachedlist_videospost_commentread_sbvremove_emojisreplace_emojisreply_to_commentsearch_shortsset_comment_moderation_statusset_video_thumbnailtuber_cache_cleartuber_cache_configtuber_cache_infotuber_GET_cachedtuber_infoupdate_video_metadataupload_captionupload_videowith_retryyt_authorizedyt_get_keyyt_get_quota_usageyt_oauthyt_reset_quotayt_searchyt_set_keyyt_set_quota_limityt_tokenyt_topic_search

Dependencies:askpassbackportscheckmateclicpp11curldigestdplyrgenericsgluehmshttrhttr2jsonlitelifecyclemagrittrmimeopensslpillarpkgconfigpurrrR6rappdirsrlangstringistringrsystibbletidyrtidyselectutf8vctrswithr

Batch Processing & Quota Management
Understanding YouTube API Quotas | Quota Costs by Operation | Tracking Quota Usage | Setting Custom Quota Limits | Authentication Strategies | API Key Authentication | OAuth2 Authentication | Which Authentication to Use? | Batch Processing | Processing Multiple Videos | Using Bulk Analysis Functions | Pagination Handling | Extracting Data from Results | Using simplify = TRUE (Default) | Using simplify = FALSE for Complex Data | Common Field Access Patterns | Error Handling & Retries | Using with_retry for Transient Errors | Handling Quota Exhaustion | Rate Limiting Best Practices | Caching for Performance | Practical Examples | Example 1: Analyze a Channel's Performance | Example 2: Trending Analysis | Example 3: Efficient Video Processing | Troubleshooting | Common Issues | Getting Help

Last update: 2026-03-24
Started: 2026-03-24

Emoji Analysis in YouTube Comments
Setup | Collecting Comments | Basic Emoji Analysis | Emoji Presence and Counts | Distribution of Emoji Usage | Emoji Frequency Analysis | Top Emojis | Temporal Analysis | Emoji Usage Over Time | Sentiment Categories | Engagement Correlation | Do emoji comments get more likes? | Cross-Video Comparison | Compare emoji usage across videos | Working with Clean Text | Performance Tips | Summary

Last update: 2026-03-24
Started: 2025-12-11

Handling Emojis and Unicode in YouTube Data
Quick Start | Emoji Detection Functions | has_emoji() - Check for emoji presence | count_emojis() - Count emojis in text | extract_emojis() - Get emojis from text | remove_emojis() - Strip emojis from text | replace_emojis() - Substitute emojis | Common Use Cases | Filter comments with high emoji usage | Text analysis without emojis | Emoji frequency analysis | Unicode Text Processing | safe_utf8() - Ensure UTF-8 encoding | clean_youtube_text() - Clean HTML and normalize text | Troubleshooting | Emojis appear as question marks | Emoji counts seem too high | Some emojis not detected

Last update: 2026-03-24
Started: 2025-08-30

Troubleshooting Common Issues
HTTP 403 Errors | Error: "YouTube Data API has not been used in project before or it is disabled" | Error: "Access denied" or "Insufficient permissions" | Authentication Issues | Error: "Both app_id and app_secret are required" | OAuth Browser Issues | API Quota and Rate Limits | Error: "Quota exceeded" | Error: "Rate limit exceeded" (429) | Common Function Issues | get_captions() returns 403 | Comments functions return fewer results than expected | Channel lookup fails | Performance Tips | Getting Help

Last update: 2026-03-24
Started: 2025-08-30

Using tuber
tuber: Access YouTube from R | Install, Load the package | Using the package | Get Statistics of a Video | Get Information About a Video | Get Caption of a Video | Search Videos | Get Comments on a video | Get statistics of all the videos in a channel

Last update: 2026-03-24
Started: 2015-06-26

Readme and manuals

Help Manual

Help pageTopics
Subset method for tuber results[.tuber_result
Add Video to Playlistadd_video_to_playlist
Comprehensive channel analysisanalyze_channel
Trending analysis for search termsanalyze_trends
Bulk video performance analysisbulk_video_analysis
Change the title of a YouTube playlist.change_playlist_title
Compare multiple channelscompare_channels
Count emojis in textcount_emojis
Create New Playlistcreate_playlist
Delete a Particular Caption Trackdelete_captions
Delete Channel Sectionsdelete_channel_sections
Delete a Particular Commentdelete_comments
Delete a Playlist Itemdelete_playlist_items
Delete a Playlistdelete_playlists
Delete a Videodelete_videos
Extended YouTube API Endpointsextended-endpoints
Extract emojis from textextract_emojis
Get statistics on all the videos in a Channelget_all_channel_video_stats
Get all the comments for a video including repliesget_all_comments
Get cached response if available and validget_cached_response
Get Particular Caption Trackget_captions
Get channel information with caching (for static parts)get_channel_info_cached
Get channel sectionsget_channel_sections
Get Channel Statisticsget_channel_stats list_my_channel
Get Comments Threadsget_comment_threads
Get Commentsget_comments
Get Live Chat Messagesget_live_chat_messages
Get live stream informationget_live_streams
Get Playlist Item IDsget_playlist_item_ids
Get Playlist Item Video IDsget_playlist_item_videoids
Get Playlist Itemsget_playlist_items
Get Playlistsget_playlists
Get video premiere informationget_premiere_info
Get Related Videosget_related_videos
Get statistics of a Video or Videosget_stats
Get Subscriptionsget_subscriptions
Get Super Chat Eventsget_super_chat_events
Get Video Detailsget_video_details
Get video thumbnails informationget_video_thumbnails
Handle YouTube API errors with context-specific messageshandle_api_error
Handle network/connection errors with retry suggestionshandle_network_error
Detect emojis in texthas_emoji
Helper Functions for Common YouTube Analysis Taskshelper-functions
Insert Channel Bannerinsert_channel_banner
Check if endpoint should be cachedis_cacheable_endpoint
Check if query parameters indicate static datais_static_query
List reasons that can be used to report abusive videoslist_abuse_report_reasons
List Captions of a Videolist_caption_tracks
List Captions for YouTube Videolist_captions
List Channel Activitylist_channel_activities
List Channel Memberslist_channel_members
Returns List of Requested Channel Resourceslist_channel_resources
List Channel Sectionslist_channel_sections
Returns List of Requested Channel Videoslist_channel_videos
Get list of categories that can be associated with YouTube channelslist_guidecats
List Languages That YouTube Currently Supportslist_langs
List supported languages with cachinglist_langs_cached
List My videoslist_my_videos
List Content Regions That YouTube Currently Supportslist_regions
List supported regions with cachinglist_regions_cached
List of Categories That Can be Associated with Videoslist_videocats
Enhanced versions of static data functions with cachinglist_videocats_cached
List (Most Popular) Videoslist_videos
Post a Top-Level Commentpost_comment
Print method for tuber resultsprint.tuber_result
YouTube API Quota Managementquota_management
Read SBV fileread_sbv
Remove emojis from textremove_emojis
Replace emojis in textreplace_emojis
Reply to a Commentreply_to_comment
Search for shorts (YouTube Shorts)search_shorts
Set Comment Moderation Statusset_comment_moderation_status
Set Video Thumbnailset_video_thumbnail
Store response in cachestore_cached_response
Provide helpful suggestions for common user errorssuggest_solution
Summary method for tuber resultssummary.tuber_result
'tuber' provides access to the YouTube API V3.tuber
Clear cache entriestuber_cache_clear
Configure caching settingstuber_cache_config
Get current cache configurationtuber_cache_info
Request Response Verificationtuber_check
DELETEtuber_DELETE
GETtuber_GET
Cached version of tuber_GET with automatic cachingtuber_GET_cached
Display tuber function metadatatuber_info
POSTtuber_POST
POST encoded in jsontuber_POST_json
PUTtuber_PUT
Unicode and Text Processing Utilitiesunicode_utils
Update a YouTube Video's Metadataupdate_video_metadata
Upload Video Caption to Youtubeupload_caption
Upload Video to Youtubeupload_video
Validate YouTube channel ID formatvalidate_channel_id
Validate language codesvalidate_language_code
Validate YouTube API part parametersvalidate_part_parameter
Validate YouTube playlist ID formatvalidate_playlist_id
Validate region codesvalidate_region_code
Validate RFC 3339 date format for YouTube APIvalidate_rfc3339_date
Validate YouTube video ID formatvalidate_video_id
Warn about deprecated functionality with migration guidancewarn_deprecated
Exponential backoff retry logic for API callswith_retry
Get Current Quota Usageyt_get_quota_usage
Manage YouTube API keyyt_get_key yt_key yt_set_key
Set up Authorizationyt_oauth
Reset Quota Counteryt_reset_quota
Search YouTubeyt_search
Set Quota Limityt_set_quota_limit
Check if authentication token is in optionsyt_authorized yt_check_token yt_token
Search YouTube by Topic It uses the Freebase list of topicsyt_topic_search