windows8.1 python2.7
Erstellen Sie mithilfe der Qiita-API aktuelle Benutzer- und Tag-Ranglisten. Das Benutzerranking basiert auf der Anzahl der Follower, und das Tag-Ranking basiert auf der Anzahl der Elemente für dieses Tag. Ich rangiere.
Um das Programm auszuführen, rufen Sie das Token von der Seite mit den Qiita-Einstellungen ab. (Klicken Sie auf das Bild oben rechts) → (Einstellungen) → (Anwendung) → (Neues Token ausstellen)
Benutzerranking
user_rank.py
# -*- coding: utf-8 -*-
from qiita_v2.client import QiitaClient
#Holen Sie sich durch das Erben von QiitaClient_Benutzer überschreiben
class child_QiitaClient(QiitaClient):
def get_user(self, id, params=None, headers=None):
'''Gibt einen bestimmten Benutzer zurück.
'''
return self.get("/users?page={}&per_page=100".format(id), params, headers)
TOKEN="Bitte geben Sie den Token ein, den Sie erhalten haben"
client = child_QiitaClient(access_token=TOKEN)
#Initialisieren Sie das Array für das Ranking(Für die Anzahl der Personen, denen gefolgt wird)
rank_followers = []
i = 0
for i in xrange(10):
rank_followers.append(0)
#Initialisieren Sie das Array für das Ranking(Für Benutzername)
rank_user_name = []
i = 0
for i in xrange(10):
rank_user_name.append("")
i = 0
for i in xrange(1,101):
res = client.get_user(str(i))
json_data = res.to_json()
for j in xrange(0,100):
#Zuweisung von Benutzernamen
user_name = json_data[j]["id"]
#Substitution der Anzahl der Personen, denen gefolgt wird
user_followers = json_data[j]["followers_count"]
#Rangfolge
for k in xrange(10):
if rank_followers[k] < user_followers:
rank_followers[k] = user_followers
rank_user_name[k] = user_name
break
print rank_followers
print rank_user_name
Tag-Ranking
tag_rank.py
from qiita_v2.client import QiitaClient
#Holen Sie sich durch das Erben von QiitaClient_Tag überschreiben
class child_QiitaClient(QiitaClient):
def get_tag(self, id, params=None, headers=None):
'''Gibt ein bestimmtes Tag zurück.
'''
return self.get("/tags?page={}&per_page=100".format(id), params, headers)
TOKEN="Bitte geben Sie den Token ein, den Sie erhalten haben"
client = child_QiitaClient(access_token=TOKEN)
#Initialisieren Sie das Array für das Ranking(Für die Anzahl der Elemente im Tag)
rank_item = []
i = 0
for i in xrange(10):
rank_item.append(0)
#Initialisieren Sie das Array für das Ranking(Für den Tag-Namen)
rank_tag_name = []
i = 0
for i in xrange(10):
rank_tag_name.append("")
i = 0
for i in xrange(1,101):
res = client.get_tag(str(i))
json_data = res.to_json()
for j in xrange(0,100):
#Tag-Namenszuweisung
tag_name = json_data[j]["id"]
#Ersetzen der Anzahl der Elemente im Tag
tag_item = json_data[j]["items_count"]
#Rangfolge
for k in xrange(10):
if rank_item[k] < tag_item:
rank_item[k] = tag_item
rank_tag_name[k] = tag_name
break
print rank_item
print rank_tag_name
・ Da nur die letzten 10.000 Elemente sowohl von Benutzern als auch von Tags erfasst werden können, können alle Informationen eingestuft werden. konnte nicht.
・ Wenn Sie die Benutzerinformationsseite von Qiita durchsuchen, werden Sie von den Nutzungsbeschränkungen erfasst. Es war interessant darüber nachzudenken, wie man Informationen erhält. ・ Wenn ich eine Chance habe, möchte ich alle Qiita-Benutzer und -Tags bewerten.
Qiita API v2-Dokumentation Python Wrapper for Qiita API v2 Die Qiita-API ändert die Anzahl der Beiträge aus irgendeinem Grund nicht Klasse erben und überschreiben
Recommended Posts