Skip to main content

Migrate YouTube subscriptions from one account to another

Project description

YouTube Subscriptions Migration is a Python program that allow user to migrate their channel subscriptions from one account to another.

Dependencies.

  • google-auth-oauthlib>=1.0.0
  • google-api-python-client>=2.89.0
  • tqdm

Usage.

Command line arguments.

usage: yt-subs-migrate [-h] -s SOURCE_CHANNEL_ID -c CLIENT_SECRET [-T TEST]

Migrate YouTube subscriptions from one account to another

options:
  -h, --help            show this help message and exit
  -s SOURCE_CHANNEL_ID, --source-channel-id SOURCE_CHANNEL_ID
                        source channel's ID
  -c CLIENT_SECRET, --client-secret CLIENT_SECRET
                        client secret of destination account
  -T TEST, --test TEST  only fetch information, don't migrate

Run instruction.

  1. Setting up OAuth2 and get client secret. You can choose any Google account.
    • Go to Google Cloud API Credentials. Create a OAuth client ID with type as a Desktop client. Download the client secret JSON file and.
    • Go to OAuth consent screen and create one.
      • The scopes must contain:
        • /auth/userinfo.email
        • /auth/userinfo.profile
        • /auth/youtube.readonly
        • /auth/youtube
        • /auth/youtube.force-ssl
      • You can publish the screen and wait for Google verification. Or add the email of of your destination account as test user so that you don't have to wait (even if the screen is on the same account as the destiantion account).
  2. Run the program. You need to supply the source YouTube channel ID and the path to the client secret JSON file.
  3. You will be asked to authenticate. IMPORTANT, authenticate the DESTINATION ACCOUNT - the account you want to migrate subscriptions to - not the source account.
  4. Wait for the program to finnish.

Note.

  • Currently, with a normal Google account, YouTube Data API have a limit quota of 10,000 per day. To insert a subscriptions costs 50 quotas. To fetch the subscription info cost 1 quota. This means that the program can only migrate about less than 200 subscriptions per day. You might have to re-run the program on multiple days to completely finish the migration.
  • The program should not attempt to subscribe to an already subscribed channel.

License.

The program itself is licensed under GNU GPL v3.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yt-subs-migrate-1.0.0.tar.gz (42.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yt_subs_migrate-1.0.0-py3-none-any.whl (29.9 kB view details)

Uploaded Python 3

File details

Details for the file yt-subs-migrate-1.0.0.tar.gz.

File metadata

  • Download URL: yt-subs-migrate-1.0.0.tar.gz
  • Upload date:
  • Size: 42.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for yt-subs-migrate-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9f7c41343fa6f0188573f6e2f2bc3164c9819306f6d74e3a40af01a9254296a7
MD5 23ec4f2fe7bc0a91bbe6ac50e959e064
BLAKE2b-256 c126cc421c3fcecc28142f561f0de5dfbfb935934ef50d09739b93418d8dd6cb

See more details on using hashes here.

File details

Details for the file yt_subs_migrate-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for yt_subs_migrate-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fce5bd7c03342a06e7e21182c7362f03125d81f91d8c8d54a6d37424ec6c188e
MD5 f945f94fb383372ab48d4a7d6b19e159
BLAKE2b-256 0e785cb96e083c8132a4dfec1ebd7ee988922ed0c253a6049f280e62ee28422c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page