min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

JavaScriptだけでGET文をサーバに投げてページ遷移もする → Chrome拡張【Enhancer for YouTube】カスタムスクリプトで実行

1,000万円を超えたbitcoinを少しだけどもらえるURL

https://bitflyer.com/invitation?id=l50e5ljw&lang=ja-JP

ハピタスからポイントもらえるURL

その買うを、もっとハッピーに。|ハピタス

要はこの記事にあるPOSTをGETにしてサーバに投げたい

oc-technote.com

 

何ができるのか

「カスタムスクリプト」をクリックすると

「このまま送信」で

 

自鯖にあるPHPスクリプトGET文とパラメータが投げられてyd-dlpが走る。

 

カスタムスクリプトのソース(JavaScript

// alert('JavaScriptのアラート');

// 今開いているツベのURLを取ってきて変数myURLに格納しておく
var myURL = location.href ;
// alert(myURL);

 

// function post(path, params, method='post') {
  function myGET(path, params, method='get') {

  const form = document.createElement('form');
  form.method = method;
  form.action = path;

// すべてのparamについて繰り返す

  for (const key in params) {
    if (params.hasOwnProperty(key)) {
      const hiddenField = document.createElement('input');

// hiddenしちゃうとGET文がブラウザのアドレス欄に見えなくなっちゃうからコメントアウト

// hiddenField.type = 'hidden';
      hiddenField.name = key;
      hiddenField.value = params[key];

      form.appendChild(hiddenField);
    }
  }

  document.body.appendChild(form);
  form.submit();
}
// post("index.php", {val:"hogehoge"});

 

///// myGET関数を実行する

///// paramは {} の中に name:value つまり 名前:値 のようにコロン区切りで書いていく

// myGET("http://myserver.co.jp:80/doTUBEDL.php", {INTXT:"https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DwbWJEGibQHc",SAVEDIR:"save_to_PT3",JIMAKU_SAVE:"on",SAVEPROG:"YTDLP"});

 

// ツベのURL(今開いてる)を冒頭で変数化したのを突っ込む

myGET("http://myserver.co.jp:80/doTUBEDL.php", {INTXT:myURL,JIMAKU_SAVE:"on",SAVEPROG:"YTDLP"});


///// GETで投げたい文字列URL全文
// http://myserver.co.jp:80/doTUBEDL.php?INTXT=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DwbWJEGibQHc&SAVEDIR=save_to_PT3&JIMAKU_SAVE=on&SAVEPROG=YTDLP

 

これを Enhancer for Y0utubeに突っ込みまして

 

スクリプトを保存!

 

あとは<>カスタムスクリプトしまくるだけ。

 

min117.hatenablog.com

 

 

 

 

その買うを、もっとハッピーに。|ハピタス