POST json avec le script Python 3

Vous voulez souvent POSTER json avec un petit script Python3 (approprié).

Tout d'abord, un exemple de code.

import urllib.request, json

if __name__ == '__main__':
    url = "http://xxxx/xxxx" 
    method = "POST"
    headers = {"Content-Type" : "application/json"}

    #Convertir un objet Python en JSON
    obj = {"xxx" : "xxxx", 123 : 123} 
    json_data = json.dumps(obj).encode("utf-8")

    #Préparer la requête http et le POST
    request = urllib.request.Request(url, data=json_data, method=method, headers=headers)
    with urllib.request.urlopen(request) as response:
        response_body = response.read().decode("utf-8")

Ensuite, à titre d'exemple simple, utilisez "Niko Niko Video" Snapshot Search API "" pour lire les résultats de la recherche de "Yukari Yuzuki". J'aimerais avoir 30 vidéos avec un grand nombre.

import urllib.request, json

if __name__ == '__main__':
    url = "http://api.search.nicovideo.jp/api/snapshot/"
    method = "POST"
    obj = {
        "query" : "Yuitsuki Yukari",
        "service" : ["video"],
        "search" : ["title", "description", "tags"],
        "join" : ["title", "view_counter"],
        "sort_by" : "view_counter",
        "order" : "desc",
        "size" : 30,
        "issuer" : "xxxxxxxxxxxxxxxxxxxxx"
    }
    json_data = json.dumps(obj).encode("utf-8")
    headers = {"Content-Type" : "application/json"}

    request = urllib.request.Request(url, data=json_data, headers=headers, method=method)
    with urllib.request.urlopen(request) as response:
        response_body = response.read().decode("utf-8")
        
        result_objs = json.loads(response_body.split('\n')[0])
        for result_obj in result_objs["values"]:
            print("{0:<10}{1}".format(result_obj["view_counter"], result_obj["title"]))

#2903887 [Hatsune Miku] C'est le Comité du bonheur et de la sécurité. 【original】
#2331059 Uniquement w na w gi w te w te w wa www (symptôme de sevrage Shinofue L5)
#1979283 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#1
#1896978 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#5
#1805589 [Minecraft] Yukari "Faisons exploser la tour des mages" part1 [VOICEROID+La vraie condition]
#1662622 [Yukari Yuzuki] J'ai fait chanter un monstre sans nom [PSYCHO-PASS】
#1617931 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#3
#1587257 [Hatsune Miku] J'ai trouvé un moyen d'être heureux pour toujours. 【original】
#1531263 [Yukari Yuzuki] Il semble y avoir une commande cachée qui vous rend heureux [Original]
#1499237 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#2
#1424024 [Lié à Yuzuki] Churrilla Churrilla Daddadda!
#1391173 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#7
#1356847 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#6
#1354592 [Minecraft] Yukari "Faisons exploser la tour des mages" part3 [VOICEROID+La vraie condition]
#1261669 [Minecraft] Yukari "Faisons exploser la tour des mages" part2 [VOICEROID+La vraie condition]
#1241053 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#8
#1223469 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#4
#1201715 [Minecraft] Yukari "Faisons exploser la tour des mages" part4 [VOICEROID+La vraie condition]
#1182955 [Minecraft] Guerrilla Craft Construisez une ligne de défense autour de vous et répandez des mines terrestres.#9
#1177519 [Minecraft] Yukari "Faisons exploser la tour des mages" part9 [VOICE ROID+La vraie condition]
#1069852 [MAYU] Un peu de bonheur que je veux réaliser. 【original】
#1045793 [Minecraft] Guerrilla Craft Construire une ligne de défense autour et répandre des mines terrestres ⑩
#1040149 [Minecraft] Yukari "Faisons exploser la tour des mages" part5 [VOICE ROID+La vraie condition]
#1008825 [Minecraft] Yukari "Faisons exploser la tour des mages" part6 [VOICE ROID+La vraie condition]
#993675 [lié à Yuzuki] Au revoir tronçonneuse
#963262 [Minecraft] Yukari "Faisons exploser la tour des mages" part7 [VOICE ROID+La vraie condition]
#927444 [Minecraft] Yukari "Faisons exploser la tour des mages" part8 [VOICEROID+La vraie condition]
#895328 [Minecraft] Guerrilla Craft Construire une ligne de défense autour et répandre des mines terrestres ⑫
#892567 [Minecraft] Yukari "Faisons exploser la tour des mages" dernier épisode [VOICE ROID+La vraie condition]
#878046 [Minecraft] Guerrilla Craft Construire une ligne de défense autour et répandre des mines terrestres ⑪

Il y a quelques mises en garde, je vais donc les présenter brièvement également.

Recommended Posts

POST json avec le script Python 3
[Python] Utiliser JSON avec Python
Publiez sur Slack avec Python 3
Formater json avec Vim (avec python)
Lire des données json avec python
Python #JSON
[Python] Fichiers wav POST avec requêtes [POST]
Quine Post avec l'API Qiita (Python)
Encodage et décodage JSON avec python
Publiez plusieurs images Twitter avec python
Publiez facilement sur Twitter avec Python 3
Ecrire un script batch avec Python3.5 ~
Fichier python de script
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
squelette de script python
Grattage avec Python
Exécuter le script Python avec TS-220 cron
Python avec Go
POSTER diversement avec Python et recevoir avec Flask
Profilage de script Python
Twilio avec Python
Convertir des données Excel en JSON avec python
Intégrer avec Python
Importer un script python
Jouez avec 2016-Python
AES256 avec python
Testé avec Python
python commence par ()
Lire et écrire des fichiers JSON avec Python
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Lire JSON avec Python et générer un CSV
Publiez le titre en plein essor de YouTube sur Twitter avec python3
[Version améliorée] Script pour surveiller le CPU avec Python
[Python3] Lecture et écriture avec isoformat datetime avec json
Exécutez l'API vSphere de VMware vSphere 6 avec le script Python (pyvmomi)
POST JSON avec Python et recevez avec PHP
Convertir JSON en CSV avec Python de Splunk
Script Python pour obtenir des informations de note avec REAPER
Communication série avec Python
Zip, décompressez avec python
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Communication de socket avec Python
Analyse de données avec python 2
Grattage en Python (préparation)
Essayez de gratter avec Python.
Recherche séquentielle avec Python
"Orienté objet" appris avec python
Exécutez Python avec VBA
Résolvez AtCoder 167 avec python
Communication série avec python