Cette fois, je voudrais vous présenter ce que vous pouvez faire avec l'API.
L'API ici est quelque chose comme une fonction qui peut être appelée à tout moment si vous êtes connecté à Internet.
Nous prévoyons d'introduire ce qui est ouvert au public par les entreprises et les particuliers.
En référence à la page ici, j'ai écrit une vidéo Nico Nico pour créer et enregistrer ma liste.
nico_mylist_add.py
#!/usr/bin/env python
#coding: utf8
import sys, re, cgi, urllib, urllib2, cookielib, xml.dom.minidom, time, netrc
import json
#netrc
netrc = netrc.netrc()
userid,a,passwd = netrc.authenticators("nicovideo")
def getToken():
html = urllib2.urlopen("http://www.nicovideo.jp/my/mylist").read()
for line in html.splitlines():
mo = re.match(r'^\s*NicoAPI\.token = "(?P<token>[\d\w-]+)";\s*',line)
if mo:
token = mo.group('token')
break
assert token
return token
def mylist_create(name):
cmdurl = "http://www.nicovideo.jp/api/mylistgroup/add"
q = {}
q['name'] = name.encode("utf8")
q['description'] = ""
q['public'] = 0
q['default_sort'] = 0
q['icon_id'] = 0
q['token'] = token
cmdurl += "?" + urllib.urlencode(q)
j = json.load( urllib2.urlopen(cmdurl), encoding='utf8')
return j['id']
def addvideo_tomylist(mid,smids):
for smid in smids:
cmdurl = "http://www.nicovideo.jp/api/mylist/add"
q = {}
q['group_id'] = mid
q['item_type'] = 0
q['item_id'] = smid
q['description'] = u""
q['token'] = token
cmdurl += "?" + urllib.urlencode(q)
j = json.load( urllib2.urlopen(cmdurl), encoding='utf8')
time.sleep(0.5)
#S'identifier
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookielib.CookieJar()))
urllib2.install_opener(opener)
urllib2.urlopen("https://secure.nicovideo.jp/secure/login",
urllib.urlencode( {"mail":userid, "password":passwd}) )
#Obtenez un jeton
token = getToken()
#argv
myn = sys.argv[1]
argvs = sys.argv[2:]
#Créer ma liste et enregistrer des vidéos
mid = mylist_create(myn)
addvideo_tomylist(mid, argvs )
Il est facile à utiliser et donne l'autorisation d'exécution au fichier. Ensuite, passez l'URL et exécutez.
python
$ chmod +x nico_mylist_add.py
$ ./nico_mylist_add.py mylistname sm9 sm1097445 sm1715919
Les changements sont (1) les informations de connexion sont obtenues à partir de netrc
, et (2) le nom et l'URL de Ma liste sont obtenus à partir des arguments.
netrc
Le "netrc" est le suivant.
python
$ cat ~/.netrc
#############################
machine nicovideo
login [email protected]
password pass123
#############################
Le traitement est le suivant.
python
#!/usr/bin/env python
import netrc
netrc = netrc.netrc()
l, a, p = netrccfg.authenticators("nicovideo")
print "My Login = %s" % (l)
print "My Password = %s" % (p)
print "My Account= %s" % (a)
python
#!/usr/bin/env python
import sys
mylistname = sys.argv[1]
argvs = sys.argv[2:]
print mylistname
print argvs
Par exemple, pour enregistrer une URL dans une Ma liste existante, apportez les modifications suivantes.
Tout d'abord, changez ʻaddvideo_tomylist. Mettez
group_id dans la partie de
xxxx`.
Ici, pour obtenir le group_id
, utilisez http: // www.nicovideo.jp / api / mylistgroup / list
. Peut-être ...
référence: http://efcl.info/wiki/niconicoapi/
def addvideo_tomylist(smids):
for smid in smids:
cmdurl = "http://www.nicovideo.jp/api/mylist/add"
q = {}
q['group_id'] = xxxxxxxx
q['item_type'] = 0
q['item_id'] = smid
q['description'] = u""
q['token'] = token
cmdurl += "?" + urllib.urlencode(q)
j = json.load( urllib2.urlopen(cmdurl), encoding='utf8')
time.sleep(0.5)
De plus, il n'est plus nécessaire de passer le nom de Ma liste comme argument, changez donc cette partie.
#argv
#myn = sys.argv[1]
argvs = sys.argv[1:]
Google+
Essayez d'obtenir des informations sur l'utilisateur à l'aide de l'API Google+.
Dans Google Cloud Console, créez un projet et activez l'API à utiliser.
Tout d'abord, accédez à l'URL suivante avec un navigateur et récupérez le «code d'autorisation».
python
https://accounts.google.com/o/oauth2/auth?client_id=[identité du client]&redirect_uri=[Rediriger l'URI]&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fplus.me&response_type=code
Veuillez noter que «[]» n'est pas inclus.
ʻAuthorization code est la partie de l'URL de la page sous
code = `.
python
$ curl -d client_id=[YOUR Client Id] -d client_secret=[YOUR Client Secret] -d redirect_uri=http%3A%2F%2Flocalhost%2Foauth2callback -d grant_type=authorization_code -d code=[YOUR Authorization code] https://accounts.google.com/o/oauth2/token
ʻAccess_token` etc. seront émis, vous pouvez donc utiliser cette valeur pour obtenir des informations sur l'utilisateur.La page de here est très utile. Ce sera.
python
$ curl -H "Authorization: OAuth [YOUR Access_token]" https://www.googleapis.com/plus/v1/people/me
Notez que ʻaccess_token expire après un certain temps, donc si vous souhaitez créer une application qui utilise l'API Google, vous devez utiliser
refresh_token`.
référence: http://mba-hack.blogspot.jp/2013/12/google-api.html
https://github.com/sorah/niconico
https://github.com/google/google-api-ruby-client
https://developers.google.com/+/api/latest/?hl=ja
Recommended Posts