Comment gratter le cours d'une action individuelle du site Web Nikkei Shimbun avec Python

Je voulais analyser le cours de l'action et trouver le stock au moment de l'achat, alors j'ai essayé de gratter le site du journal Nikkei. Il existe différents sites qui proposent des cours d'actions gratuitement, tels que Stock Investment Memo, mais ils sont souvent mis à jour de manière irrégulière. Le site Nikkei Shimbun est mis à jour quotidiennement.

Tout d'abord, lors du scraping d'un site, si vous ne suivez pas diverses règles, ce sera un crime, mais Nikkei Shimbun [robots.txt]( En ce qui concerne https://www.nikkei.com/robots.txt) et les Conditions d'utilisation, il ne semble y avoir aucun problème dans le cadre de l'utilisation personnelle (? )est. (S'il vous plaît laissez-moi savoir si cela ne fonctionne pas)

Si vous utilisez la méthode appelée read_html () du module appelé pandas, cela prendra quelques secondes.

nikkei_scrape.py


import pandas as pd

def get_stock_prices(stock_number):
    url = "https://www.nikkei.com/nkd/company/history/dprice/?scode={}&ba=1".format(stock_number)
    headers = {
        "User-Agent": "User-Informations sur l'agent"
    }
    dfs = pd.read_html(url)
    for i in range(len(dfs)):
        if "Date" in str(dfs[i]):
            return dfs[i]
    return False

Les informations utilisateur-agent sont acceptées si vous copiez et collez la chaîne de caractères qui apparaît lorsque vous ouvrez ce site. Par exemple, dans mon cas, c'était Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit / 537.36 (KHTML, comme Gecko) Chrome / 81.0.4044.122 Safari / 537.36. Pour plus d'informations, cliquez ici [https://qiita.com/nightyknite/items/b2590a69f2e0135756dc).

Entrez le code de stock à 4 chiffres dans stock_number. Par exemple, si vous saisissez 1301, il s'agit de l'URL de la page boursière de la société Gokuyo [https://www.nikkei.com/nkd/company/history/dprice/?scode=1301&ba=1](https: //www.nikkei. Scraping com / nkd / company / history / dprice /? Scode = 1301 & ba = 1). Vous pouvez facilement trouver le code de la marque sur Google, et vous pouvez également le trouver sur le site Web de TSE. Vous pouvez télécharger le fichier EXCEL.

Il peut y avoir un tableau supplémentaire dans la page Web du cours de l'action, donc pour obtenir uniquement le tableau du cours de l'action, je tourne l'instruction for pour ne renvoyer que le tableau qui contient le mot «date».

c'est tout.

Recommended Posts

Comment gratter le cours d'une action individuelle du site Web Nikkei Shimbun avec Python
Comment récupérer des données d'image de Flickr avec Python
Comment connaître le nombre de GPU de python ~ Remarques sur l'utilisation du multitraitement avec pytorch ~
De l'introduction de JUMAN ++ à l'analyse morphologique du japonais avec Python
Comment couper la partie inférieure droite de l'image avec Python OpenCV
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
Comment spécifier des attributs avec Mock of Python
Remarque: Comment obtenir le dernier jour du mois avec python (ajouté le premier jour du mois)
[Astuces Python] Comment récupérer plusieurs clés avec la valeur maximale du dictionnaire
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 mettre à niveau correctement le logiciel lors de la construction de Linux (CentOS) avec Vagrant ~ En utilisant l'exemple de mise à niveau de Python 2.7 vers Python 3.6 ~
[Python] Comment supprimer les valeurs en double de la liste
Le mur lors du passage du service Django de Python 2.7 à la série Python 3
Comment obtenir le nombre de chiffres en Python
Apprenez Nim avec Python (dès le début de l'année).
[Python] Comment spécifier l'emplacement de téléchargement avec youtube-dl
[Python] Résumé de la façon de spécifier la couleur de la figure
[Python] Comment réécrire le style de table avec python-pptx [python-pptx]
De l'état initial de CentOS8 à l'exécution de php python perl ruby avec nginx
Extraire des images et des tableaux de pdf avec python pour réduire la charge de reporting
Comment compter le nombre d'occurrences de chaque élément de la liste en Python avec poids
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
Comment revenir à la commande depuis l'état où vous ne pouvez pas entrer en mode interactif avec python de git bash
J'ai essayé de trouver l'entropie de l'image avec python
J'ai essayé de simuler la propagation de l'infection avec Python
J'ai essayé de résoudre le problème de F02 comment écrire en temps réel hors ligne avec Python
J'ai évalué la stratégie de négociation du système boursier avec Python.
Comment compter rapidement la fréquence d'apparition des caractères à partir d'une chaîne de caractères en Python?
Essayez d'automatiser le fonctionnement des périphériques réseau avec Python
Comment gratter en quelques secondes avec le sélénium de Python
Comment entrer dans l'environnement de développement Python avec Vagrant
[Introduction à Python] Comment obtenir des données avec la fonction listdir
Comment obtenir les informations des organisations, Cost Explorer d'un autre compte AWS avec Lambda (python)
Récupérez la source de la page à charger indéfiniment avec python.
Je souhaite extraire une URL arbitraire de la chaîne de caractères de la source html avec python
Essayez de calculer la position de l'émetteur à partir du modèle de propagation des ondes radio avec python [Wi-Fi, Beacon]
Comment déterminer l'existence d'un élément sélénium en Python
Comment modifier le niveau de journalisation d'Azure SDK pour Python
[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split
Comment obtenir l'ID de Type2Tag NXP NTAG213 avec nfcpy
Comment obtenir des abonnés et des abonnés de Python à l'aide de l'API Mastodon
[Python] Comment obtenir le premier et le dernier jour du mois
Je veux sortir le début du mois prochain avec Python
Exportez le contenu de ~ .xlsx dans le dossier en HTML avec Python
Comment éviter la duplication des données lors de la saisie de Python vers SQLite.
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
Comment se connecter à Cloud Firestore à partir de Google Cloud Functions avec du code Python
[Python] Explique comment utiliser la fonction format avec un exemple
Comment surveiller l'état d'exécution de sqlldr avec la commande pv
Comment mettre à jour la version Python de Cloud Shell dans GCP
J'ai essayé d'améliorer l'efficacité du travail quotidien avec Python
Comment envoyer une requête à l'API DMM (FANZA) avec python
PhytoMine-I a essayé d'obtenir les informations génétiques de la plante avec Python
Python: comment utiliser async avec
Existence du point de vue de Python
Comment obtenir la version Python
Comment démarrer avec Python