Le calendrier de l'Avent de Qiit a un classement public. Classement général du calendrier
Au début, je l'ai regardé dans le but de trouver un calendrier intéressant, mais quand j'ai regardé de près, nous étions aussi classés! : Clap clap ::
Cependant, même si le nombre de likes est de 1, il est classé, donc c'est naturel.
C'était le troisième jour pour la première fois depuis que je savais qu'il était classé ** "Quel est le classement aujourd'hui?" **. C'est un problème ...
J'ai décidé d'automatiser l'acquisition du classement en disant: "Puisque Qiita a une API, vous pouvez obtenir le classement avec."
Qiita a une API. Ici → Spécifications de l'API Qiita v2 Cependant, même si vous regardez la documentation, il n'y a pas d'API Advent Calender: sob:
S'il n'y a pas d'API, j'ai décidé de gratter avec Python.
Quand j'ai cherché Python scraping
, j'ai trouvé beaucoup de Beautiful Soup, j'ai donc décidé d'utiliser ** Beautiful Soup **.
Le but est clair. Pour obtenir le classement de votre entreprise. J'ai recherché les balises HTML.
Pour obtenir le numéro de classement, il semble que vous devriez remonter de deux à partir du lien du calendrier <a class="adventCalendarRankingListItem_calendarName">
et obtenir le texte.
J'ai essayé de coder en utilisant BeautifulSoup.
from urllib import request
from bs4 import BeautifulSoup
targethref = '/advent-calendar/2019/fork'
def main():
url = 'https://qiita.com/advent-calendar/2019/ranking/feedbacks/all'
targetclass = 'adventCalendarRankingListItem_calendarName'
response = request.urlopen(url)
soup = BeautifulSoup(response,features="html.parser")
ranking = soup.find('a',class_=targetclass,href=targethref).parent.parent.contents[0].text
response.close()
print(ranking)
if __name__ == "__main__":
main()
Ça y est, c'est aussi simple que ça! ** BeautifulSoup ** Super! (C'est mon sentiment parce que je ne connais pas d'autres bibliothèques qui peuvent être grattées)
target href =
sur la 4ème ligne. *J'exécute cette logique sur AWS Lambda une fois par jour. Le résultat de l'exécution a été envoyé à l'outil de discussion de l'entreprise pour partager les informations.
Ce fut un jour où j'ai réalisé que je pouvais faire du scraping même si l'API n'était pas publiée: ensoleillé:
:fork_and_knife: FORK Advent Calendar 2019 L'article du calendrier de l'Avent que j'ai écrit est ici
Recommended Posts