您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Youtube and google regularly change your region based on your IP. This userscript automatically sets it to your preferred region instead.
- // ==UserScript==
- // @run-at document-start
- // @version 1.0.0
- // @name YouTube and Google region setter
- // @namespace https://github.com/emmaexe/userscripts
- // @author emmaexe
- // @description Youtube and google regularly change your region based on your IP. This userscript automatically sets it to your preferred region instead.
- // @license GPL-3.0-only
- // @homepageURL https://github.com/emmaexe/userscripts
- // @supportURL https://github.com/emmaexe/userscripts/issues
- // @include *://youtube.*/*
- // @include *://*.youtube.*/*
- // @include *://www.google.com/*
- // @exclude *://www.google.com/a/*
- // @icon https://raw.githubusercontent.com/emmaexe/userscripts/main/youtube-region-setter/assets/youtube-ico-32.png
- // @grant GM.registerMenuCommand
- // @grant GM.getValue
- // @grant GM.setValue
- // ==/UserScript==
- GM.registerMenuCommand('Set preferred youtube/google region', async () => {
- region = prompt('Please enter your preferred region:', 'GB');
- await GM.setValue('region', region);
- window.location.reload();
- })
- async function main(){
- let region = await GM.getValue('region', 'GB');
- let oldUrl = location.href;
- let arr = oldUrl.split('?');
- if (!(oldUrl.includes(`&gl=${region}`) || oldUrl.includes(`?gl=${region}`))) {
- if (arr.length > 1 && arr[1] !== '') {
- location.replace(oldUrl+`&gl=${region}`);
- } else {
- location.replace(oldUrl+`?gl=${region}`);
- }
- }
- }
- main();