1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

JSONからURLのクエリーを生成する

Last updated at Posted at 2020-07-14

動機

初めてPythonのRequestモジュールを触った。JSONからクエリーを作成できるんすか?!便利じゃん!素晴らしい!→Shortcutsで再現した:relaxed:

フロー全体

今回はAppleMusicのURLからidを取り出して、iTunesSearchAPIにリクエストするためのURLを生成してます。079E3100-6A2E-40CC-9328-D34267E2BF38.jpeg

入力されたURLからクエリ文字列を取得

44E3B10A-2C8A-40DD-865B-45EF3ECECAD1.jpeg
[URLのコンポーネントを取得]でクエリーを取得するよう指定します。
i=40284574が出力されます。

クエリー用の辞書に値を入れる

7AAC9F70-FF78-4B4E-A352-DC3990537D20.jpeg出力するURLのクエリーを
country=jp&lang=ja_jp&id=40284574にしたいので、それに合った値を入力しておきます。
この変数iは、上の[URLのコンポーネントを取得]から出力されたマジック変数です。以下のGIFのように、
1.マジック変数をタップ
2.型を辞書にする
3.キーiを指定
この動作で、i=40284574{"i":"40284574"}に変換し、キーiの値として扱うことができます。(めちゃ便利)
ちなみに、このテクを使わずに同じことをしようとすると2アクション分多くなります(下画像参照)。面倒くさいので上のテクニックを使うことを強ーくおすすめします。
1AD0CB83-761E-4F37-84E2-2EFB9D776219.jpeg

辞書のキーごとに値を取得してペアにする

92DC4083-9E66-4EEB-8D68-A1F4930D0378.jpeg
[辞書]のキー(country,lang,id)を[各項目を繰り返す]に入れて対応した値とペアにします。
さっきのテクニックを使って、辞書のマジック変数をキーのリスト(配列)として扱います。
7D92D38F-9251-4B78-8026-FD98D199981B.gif
[各項目を繰り返す]内でキーと値を'='で繋いでリストを出力します。
このリストを[テキストを結合]で'&'を使って結合し、URLのクエリー部分に突っ込んでおしまいです。

このショートカットのリンク

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?