Considérez ce que vous pouvez faire avec Python dans l'article Qiita

introduction

Alors que je continue à apprendre la programmation, que puis-je faire après avoir terminé le didacticiel (que j'ai)? Je comprends la syntaxe du langage, mais je ne sais pas quoi faire ensuite. Je pense qu'il existe une telle situation pour les débutants.

Donc, cette fois, j'aimerais avoir une idée de ce qu'il faut faire ensuite en acquérant et en analysant les meilleurs articles et balises de Qiita.

Ce que j'ai fait

  1. Obtenir le titre du meilleur article de Qiita à partir d'un mot spécifique
  2. Obtenir et analyser les balises liées à un mot spécifique

    En bref, j'ai essayé de considérer à partir des balises quel genre de genre il y en a beaucoup, ainsi que de me référer à ce que je fais en me référant aux meilleurs articles.

    • Fondamentalement, il suffit de gratter

    environnement

    Python 3.9.0

    1. Obtenez le titre du meilleur article de Qiita à partir d'un mot spécifique

    Par exemple, j'ai essayé d'obtenir 10 pages des meilleurs articles lorsque j'ai recherché "Python".

    qiita_title.py

    
    
    import requests
    from bs4 import BeautifulSoup as bs
    
    query = input('please input words : ')
    
    with open(query + '_qiita.txt', 'wb') as outfile:
        for i in range(1,11):
            url = 'https://qiita.com/search?page=' + str(i) + '&q=body%3A' + query + '+tag%3A' + query + '&sort=like'
            res = requests.get(url)
            soup = bs(res.text, 'html.parser')
            titles = soup.find_all('h1', class_="searchResult_itemTitle")
    
            for i in titles:
                s = i.get_text()
                outfile.write(s.encode('utf-8'))
                outfile.write(b'\n \n')
    
    
    

    Résultat de l'exécution: Mot de recherche = python

    Résumé des mots anglais souvent utilisés dans la programmation [mis à jour de temps à autre]

    [Résumé] Plus de 100 outils à usage général que je pense que les programmeurs qui ne le savent pas perdront

    Comment écrire le JavaScript d'Imadoki 2018

    Je veux que les nouveaux programmeurs connaissent la trajectoire de l'humanité pour acquérir l'orientation objet

    Après vous être inscrit sur AtCoder, que faire ensuite - Si vous résolvez cela, vous pouvez vous battre suffisamment! Sélection des questions précédentes 10 questions ~

    ~ Ce qui suit est omis.

    Vous ne pouvez extraire que les titres des meilleurs articles de qiita et vous référer à ce qu'il faut faire ensuite. D'ailleurs, c'est ici que j'ai personnellement trouvé ça intéressant.

    Maîtriser Django le plus rapide part1 Apprenez en créant une blockchain ~ Le moyen le plus rapide d'apprendre comment fonctionne une blockchain est de la faire ~ Le synonyme de "étranger rouge" est "amant blanc" Une histoire qui veut générer automatiquement ceci Si vous avez un apprentissage en profondeur, vous pouvez dépasser le taux de récupération de 100% dans les courses de chevaux Lorsque j'ai créé un site de classement de livres techniques à partir du total des articles Qiita, environ 4000 livres techniques se sont bien alignés

    Je souhaite également créer un site de classement ~

    2. Obtenez et analysez les balises liées à un mot spécifique

    Cette fois, en acquérant et en analysant les balises associées des meilleurs articles, il est jugé quel type de chose est approprié pour le mot recherché.

    qiita_tag.py

    
    
    import requests
    from bs4 import BeautifulSoup as bs
    import csv
    
    query = input('please input words : ')
    lists = []
    
    for i in range(1,11):
        url = 'https://qiita.com/search?page=' + str(i) + '&q=body%3A' + query + '+tag%3A' + query + '&sort=like'
        # url = 'https://qiita.com/search?page=1' + '&q=body%3A' + query + '+tag%3A' + query + '&sort=like'
        res = requests.get(url)
        soup = bs(res.text, 'html.parser')
        tags = soup.find_all('li', class_="tagList_item")
        for i in tags:
            lists.append(i.get_text())
    
    print("\n /// result is below /// \n")
    print(lists, '\n')
    
    unique_tags = set(lists)
    
    with open('./csv/'+query+'_tags.csv', 'w', newline='') as f:
        for i in unique_tags:
            writer = csv.writer(f)
            writer.writerow([str(i), lists.count(i)])
    
    

    Comme auparavant, j'ai extrait les balises des articles recherchés par python dans csv. J'ai essayé de le trier ci-dessous (la première colonne est la balise, la deuxième colonne est le nombre d'apparitions (nombre total d'articles = 100 articles))

    qiita_tags_python.png

    En regardant les choses de cette manière, on peut voir qu'il existe de nombreux "machine learning", "deep learning" et "data processing", qui sont également des langages qui traitent les données. Ensuite, étant donné que de nombreux "Django", "Scraping", "Ruby", etc. sont également vus, on peut voir qu'il y a aussi une demande pour les systèmes Web. Ce n'est pas parce que python est utilisé pour le système Web, mais parce qu'il y a beaucoup de gens qui font du développement Web, je pense que le nombre de balises du système Web augmente en conséquence (je ne sais pas)

    en conclusion

    Donc, il s'est avéré que python est un langage fort dans le traitement de données tel que l'apprentissage automatique (il était connu auparavant). Quoi qu'il en soit, même si j'apprends python moi-même, je suis toujours vierge de l'apprentissage automatique, alors j'aimerais en parler dans le prochain article.

    Recommended Posts