Comment envoyer une requête à l'API DMM (FANZA) avec python

Mokuji

Déclencheur

API DMM souvent utilisée par les affiliés. J'ai écrit le code pour envoyer une requête avec python et je veux obtenir les résultats de la recherche, alors prenez-en note. (Il y a pas mal de temps que je l'ai réellement écrit et utilisé)

Code source

Ceci est un exemple pour obtenir des informations sur le travail de la même personne.

# dayUtil
import datetime
# htmlUtils
import requests
from urllib.request import urlopen
# JsonParser
import json

#Domaine utilisé dans le message de demande
DOMAIN = "https://api.dmm.com/affiliate/v3/ItemList"
#API utilisée dans le message de demande_ID
API_ID = "xxxxx"
#AFFILIATE utilisé dans le message de demande_ID
AFFILIATE_ID = "xxxxx"
#SORT utilisé dans le message de demande_VALUE
SORT_VALUE = "date"
#OUTPUT utilisé dans le message de demande
OUTPUT = "json"
#SITE utilisé dans le message de demande
SITE = "DMM.R18"

# ==================================================
#génération html
# ==================================================
def create():
    jsonObject = requestToApi(10, 30, "mot-clé", "digital_doujin", "doujin")

# ==================================================
#Envoyer la demande à l'API
# ==================================================
def requestToApi(hitsNum, dateFromNum, keyword, floor, service):
    response = requests.get(createRequest(hitsNum, dateFromNum, keyword, floor, service))
    jsonObject = response.json()

    return jsonObject

# ==================================================
#Demande de génération
# ==================================================
def createRequest(hitsNum, dateFromNum, keyword, floor, service):
    txt = DOMAIN + "?" \
    + createQueryParam("api_id", API_ID) + "&" \
    + createQueryParam("affiliate_id", AFFILIATE_ID) + "&" \
    + "hits=" + str(hitsNum) + "&" \
    + createQueryParam("sort", SORT_VALUE) + "&" \
    + createQueryParam("keyword", keyword) + "&" \
    + createDateTxt(dateFromNum) + "&" \
    + createQueryParam("output", OUTPUT) + "&" \
    + createQueryParam("site", SITE) + "&" \
    + createQueryParam("floor", floor) + "&" \
    + createQueryParam("service", service)

    return txt

# ==================================================
#Générer des paramètres de requête
# ==================================================
def createQueryParam(key, value):
    return key + "=" + value

Recommended Posts

Comment envoyer une requête à l'API DMM (FANZA) avec python
[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split
Comment lire un fichier CSV avec Python 2/3
Envoyer un message à LINE avec Python (LINE Notify)
Comment envoyer un message à LINE avec curl
[Python] Explique comment utiliser la fonction range avec un exemple concret
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
Comment convertir / restaurer une chaîne avec [] en python
[Python] Comment dessiner un graphique linéaire avec Matplotlib
[Introduction à Python] Comment itérer avec la fonction range?
Comment créer un sous-menu avec le plug-in [Blender]
[Python] Comment spécifier l'emplacement de téléchargement avec youtube-dl
[Python] Comment réécrire le style de table avec python-pptx [python-pptx]
Appelez l'API avec python3.
Comment publier un ticket depuis l'API Shogun
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
Comment faire fonctionner l'API Discord avec Python (enregistrement de bot)
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
Comment obtenir une liste de fichiers dans le même répertoire avec python
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
J'ai essayé de simuler la propagation de l'infection avec Python
Une note sur l'utilisation de l'API Facebook avec le SDK Python
Comment convertir un tableau en dictionnaire avec Python [Application]
La première API à créer avec le framework Python Djnago REST
Comment utiliser la méthode __call__ dans la classe Python
Probablement le moyen le plus simple de créer un pdf avec Python 3
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Comment entrer dans l'environnement de développement Python avec Vagrant
[Introduction à Python] Comment obtenir des données avec la fonction listdir
Python: comment utiliser async avec
Comment obtenir la version Python
Comment démarrer avec Python
Accédez à l'API Etherpad-lite avec Python
Comment utiliser l'API Python d'OpenPose
[Python] Comment utiliser l'API Typetalk
[Python] Créer une API pour envoyer Gmail
Exécutez le programme sans créer d'environnement Python! !! (Comment démarrer avec Google Colaboratory)
Comment déterminer l'existence d'un élément sélénium en Python
Rubyist a essayé de créer une API simple avec Python + bouteille + MySQL
[Version septembre 2020] Explique la procédure d'utilisation de l'API Gmail avec Python
[Python 3.8 ~] Comment définir intelligemment des fonctions récursives avec des expressions lambda
J'ai créé une bibliothèque Python pour appeler l'API de LINE WORKS
Comment obtenir des abonnés et des abonnés de Python à l'aide de l'API Mastodon
Comment vérifier la taille de la mémoire d'une variable en Python
Comment faire une commande pour lire le fichier de paramètres avec pyramide
Comment créer une caméra de surveillance (caméra de sécurité) avec Opencv et Python
Faire une demande de Device Farm (appium python) à API Gateway
[Python] Explique comment utiliser la fonction format avec un exemple
[Python] Comment obtenir une valeur avec une clé autre que value avec Enum
[ROS2] Comment lire un fichier bag avec le lancement au format python
Créer une API REST pour faire fonctionner dynamodb avec le Framework Django REST
Comment créer une API de machine learning sans serveur avec AWS Lambda
mail html avec image à envoyer avec python
Classe qui atteint l'API de DMM
Comment ajouter un package avec PyCharm