[LINUX] J'ai essayé d'obtenir automatiquement le RSS de la chanson la plus populaire de l'iTunes Store

introduction

Cet article est utilisé par les étudiants qui font du JS ou quelque chose au lieu de mémos. Ne vous attendez pas au contenu.

1. Un programme qui enregistre les données acquises dans un fichier

#!/bin/bash
dname="/home/vagrant/workspace/itunes-rank-rss"
mkdir -p $dname
filename="${dname}/hourly-topsong-`date +'%Y%m%d%H%M'`.xml"
curl -s -H "User-Agent: CrawlBot;" -o $filename https://itunes.apple.com/jp/rss/topsongs/limit=10/xml

{#! / Bin / bash} est une description de l'exécution d'un script shell dans le shell bash dans / bin / bash. La deuxième ligne montre le répertoire dans lequel la variable dname stocke. La troisième ligne utilise l'option -p pour créer un nouveau répertoire s'il n'existe pas, et cela fonctionnera s'il existe. La quatrième ligne affecte le fichier XML avec le nom spécifié au nom de fichier variable. $ {dname} sert à traiter dname comme une variable plutôt qu'une chaîne. date +'%y%m%d%h%m' Il s'agit d'une commande qui génère la date et la chaîne de caractères pour créer le nom de fichier. La cinquième ligne utilise la commande curl.

2. Qu'est-ce que la commande curl?

Une commande pour transférer des données du côté serveur ou client. La forme de base est la suivante.

```curl a différentes options. Cette fois-s,-o,-J'utilise trois commandes pour h.

 |option|sens|Comment utiliser|
 |:---:|:---:|:---:|
 |-o|Sortie du résultat de l'exécution dans un fichier|curl -o URL du PATH de destination de sortie|
 |-s|Masquer la progression lors de la sortie du fichier|curl -s -o URL du PATH de destination de sortie|
 |-H|Ajouter à l'en-tête du fichier|curl -Chaîne H|

# 3. Exécuter dans un environnement virtuel
 Cette fois, ce sera fait sur Ubuntu, alors démarrez l'environnement virtuel avec iTerm2.

 Où ça a commencé
 1. Boîte virtuelle
 2. vagabond
 Ubuntu est utilisé dans un environnement virtuel qui utilise deux logiciels.
cd ~/vagrant/ubuntu
vagrant up
vagrant ssh

 Accédez au répertoire dans lequel Ubuntu est installé. vagrant up est une commande pour démarrer Ubuntu installé sur un PC virtuel, et vagrant ssh se connecte à SSH avec l'ensemble de machines virtuelles Vagrant.
 Pour exécuter le programme de script shell, il est nécessaire de donner au fichier la permission de l'exécuter, et cette fois je l'ai écrit sur la console afin qu'il puisse être exécuté par tous les utilisateurs.

#### **`chmod a+x niconico-ranking.sh`**
```sh

4. Automatisez l'enregistrement des fichiers

Pour exécuter automatiquement le programme décrit cette fois, exécutez-le à l'aide de cron.

Configurez cron avec le contenu ci-dessus. Écrivez ce qui suit à la fin de cron et spécifiez-le toutes les 40 minutes pour exécuter le programme.

40 * * * * /home/vagrant/workspace/itunes-rank.sh


Vérifiez le contenu du répertoire avec la commande ls, et s'il y a un fichier, cela réussit. Je vous remercie pour votre travail acharné! !!

Qu'est-ce que XML

XML est traduit par «langage de balisage extensible» en japonais. En XML, les balises sont utilisées dans le but de gérer la chaîne de caractères incluse en tant que données d'une manière facile à comprendre. XML est un langage pour décrire les données. Vous pouvez faciliter la compréhension des données du document et les échanger. C'est un langage qui transmet des informations aux machines d'une manière simple et efficace.

Qu'est-ce que cron

Puisqu'il s'agit d'un programme résident (démon) utilisé en standard dans de nombreux systèmes d'exploitation UNIX, il démarre périodiquement le programme spécifié en fonction de la planification définie par l'utilisateur.

Recommended Posts

J'ai essayé d'obtenir automatiquement le RSS de la chanson la plus populaire de l'iTunes Store
J'ai essayé d'obtenir les informations de localisation du bus Odakyu
J'ai essayé d'obtenir l'index de la liste en utilisant la fonction énumérer
J'ai essayé de corriger la forme trapézoïdale de l'image
J'ai essayé d'obtenir le code d'authentification de l'API Qiita avec Python.
J'ai essayé d'extraire automatiquement les mouvements des joueurs Wiire avec un logiciel
Obtenez le titre de la chanson à partir du titre de la vidéo que vous avez chanté
J'ai essayé d'obtenir les informations sur le film de l'API TMDb avec Python
J'ai essayé de vectoriser les paroles de Hinatazaka 46!
J'ai essayé d'envoyer automatiquement la littérature du nouveau virus corona à LINE avec Python
J'ai essayé de résumer la forme de base de GPLVM
[Python] J'ai essayé de représenter graphiquement le top 10 des ombres à paupières
J'ai essayé de visualiser les informations spacha de VTuber
[Python] J'ai essayé d'obtenir Json de squid ring 2
J'ai essayé de classer les voix des acteurs de la voix
J'ai essayé de résumer les opérations de chaîne de Python
J'ai essayé de trouver l'entropie de l'image avec python
J'ai essayé de trouver la moyenne de plusieurs colonnes avec TensorFlow
Je veux obtenir des informations sur le fonctionnement de Yahoo Route
[Python] J'ai essayé de visualiser la relation de suivi de Twitter
[Apprentissage automatique] J'ai essayé de résumer la théorie d'Adaboost
J'ai essayé de combattre le minimum local de la fonction Goldstein-Price
Keras Je veux obtenir la sortie de n'importe quelle couche !!
J'ai essayé d'obtenir diverses informations de l'API codeforces
J'ai essayé de publier automatiquement sur ChatWork au moment du déploiement avec Fabric et ChatWork Api
J'ai essayé de prédire le genre de musique à partir du titre de la chanson sur le réseau neuronal récurrent
J'ai essayé de déplacer le ballon
J'ai essayé d'estimer la section.
Je veux obtenir le nom de la fonction / méthode en cours d'exécution
[Linux] J'ai essayé de résumer les commandes de confirmation des ressources
J'ai essayé d'obtenir une base de données sur les courses de chevaux en utilisant Pandas
J'ai essayé d'automatiser l'arrosage du pot avec Raspberry Pi
Un mémorandum lors de l'acquisition automatique avec du sélénium
J'ai essayé d'obtenir une liste de noms AMI en utilisant Boto3
J'ai essayé de démarrer avec Bitcoin Systre le week-end
J'ai essayé d'agrandir la taille du volume logique avec LVM
J'ai essayé de résumer la méthode de mise en œuvre fréquemment utilisée de pytest-mock
J'ai essayé d'améliorer l'efficacité du travail quotidien avec Python
J'ai essayé de collecter automatiquement des images de Kanna Hashimoto avec Python! !!
J'ai essayé de visualiser la condition commune des téléspectateurs de la chaîne VTuber
PhytoMine-I a essayé d'obtenir les informations génétiques de la plante avec Python
J'ai essayé le serveur asynchrone de Django 3.0
J'ai essayé de résumer la commande umask
J'ai essayé de reconnaître le mot de réveil
J'ai essayé de résumer la modélisation graphique.
J'ai essayé d'estimer le rapport de circonférence π de manière probabiliste
J'ai essayé de toucher l'API COTOHA
J'ai essayé de transformer l'image du visage en utilisant sparse_image_warp de TensorFlow Addons
J'ai essayé de visualiser la tranche d'âge et la distribution des taux d'Atcoder
J'ai essayé de transcrire les actualités de l'exemple d'intégration commerciale sur Amazon Transcribe
Lorsque j'ai essayé d'exécuter Python, j'ai été ignoré dans le Microsoft Store
zoom J'ai essayé de quantifier le degré d'excitation de l'histoire lors de la conférence
J'ai essayé d'estimer la similitude de l'intention de la question en utilisant Doc2Vec de gensim
J'ai essayé d'améliorer la précision de mon propre réseau neuronal
J'ai essayé de résoudre 100 traitements linguistiques Knock version 2020 [Chapitre 3: Expressions régulières 25-29]
J'ai mesuré 6 méthodes pour obtenir l'indice de la valeur maximale (valeur minimale) de la liste
(Python) J'ai essayé d'analyser 1 million de mains ~ J'ai essayé d'estimer le nombre d'AA ~