

# Comment collecter les hashtags Instagram depuis les légendes et les premiers commentaires

Collectez le texte des commentaires de premier niveau d'une publication connue, vérifiez quel commentaire appartient au propriétaire de la publication, puis extrayez les hashtags. Un Actor est un programme hébergé de collecte de données. Une Task est un préréglage d'entrée enregistré. L'Actor collecte les lignes sources, et vous faites l'analyse.

## Étapes de collecte

1. Sélectionnez une publication connue et conservez son URL ou son code court. Copiez la légende actuelle depuis la source publique dans un champ de légende distinct, avec l'heure d'observation. L'Actor de commentaires ne fournit pas les légendes. N'utilisez pas l'ancien point de terminaison des recherches passées.
2. Lancez un petit échantillon dans l'ordre par défaut, avec `maxCommentsPerPost` réglé sur `3`, pour le pilote. Réglez `postUrls` sur l'URL de votre publication publique connue ou de votre Reel, `collectAllAvailable` sur `false` et `commentSortMode` sur `default`. Examinez l'identité de la cible, le texte et `OUTPUT`. `savedRows` et `cappedTargets` sont des totaux de l'exécution. Les entrées de cible contiennent, pour chaque cible, `resultState`, `sampleHealth` et `stopReason`. Le contrôle plafonné actuel à trois lignes, déjà vérifié, ne confirme que l'identité de la source, le texte et les dates. Il ne prouve pas la récupération du commentaire du propriétaire ni le premier commentaire chronologique. Ne promettez pas un commentaire du propriétaire à partir d'un plafond plus élevé. N'augmentez le plafond que pour une publication connue justifiée. Si l'échantillon public masque le commentaire nécessaire, marquez la preuve de tag du premier commentaire comme inconnue et inspectez la publication publique manuellement.
3. Identifiez le compte propriétaire à partir de la publication source. Faites correspondre `ownerId` lorsqu'il est présent, parce qu'[un nom d'utilisateur seul peut changer](/fr/articles/d%C3%A9duplication-profils-instagram-cr%C3%A9ateurs/). Un commentaire qui mentionne le créateur n'est pas écrit par le créateur. Laissez non résolues les correspondances d'auteur ambiguës.
4. Conservez, pour chaque commentaire candidat écrit par le propriétaire, `commentId`, `text`, `createdAt`, `ownerId`, `ownerUsername`, `ownerVerified`, `likesCount`, `repliesCount`, `collectedAt` et l'URL source. Notez que `repliesCount` est un nombre de réponses affiché, et non un export des enregistrements de réponses. Vérifiez manuellement s'il s'agit du commentaire initial de hashtags visé. Le tri du plus ancien au plus récent ne trie que l'échantillon public collecté. Il ne peut pas établir le vrai premier commentaire. Ne qualifiez pas de premier un candidat incertain.
5. Extrayez les jetons de hashtag visibles, conservez l'orthographe brute inchangée et créez une clé de comparaison distincte par repli de casse : une forme où les différences entre majuscules et minuscules ne comptent plus pour la comparaison. Utilisez une règle de jeton claire. Pour l'anglais, acceptez le symbole dièse suivi de lettres, de chiffres ou d'un tiret bas. La ponctuation termine le jeton. Les autres écritures exigent une règle correspondante et des vérifications manuelles. Excluez les mentions d'utilisateurs, les adresses e-mail et les symboles dièse isolés.
6. Construisez un tableau de provenance. Incluez la clé de publication, la clé de commentaire ou la source légende, la vérification de l'auteur, le tag brut, la clé normalisée, `collectedAt` et le statut. Ne mélangez pas le tag d'un autre utilisateur avec les tags du propriétaire.
7. Comparez les clés de tags de la légende avec les clés de tags du commentaire du propriétaire vérifié. Signalez les ensembles uniquement légende, uniquement commentaire et partagés. Si la preuve du commentaire du propriétaire est indisponible, ne la traitez pas comme un ensemble de tags vide : une absence de preuve ne confirme pas que l'ensemble est vide. Cela montre seulement le placement des tags observés, pas une preuve de portée.

## Exemple résolu fictif

Voici un exemple fictif original pour montrer le fonctionnement du tableau. La publication fictive P1 a la légende « Garden notes #LeafCare #HomeGarden. » Un commentaire vérifié du propriétaire, C1, dit « More tags: #HomeGarden #SoilMix #LeafCare #SoilMix. » Un autre compte, C2, dit « Nice #PlantSale. »

L'identité du propriétaire correspond à C1, et son placement initial est vérifié sur la publication publique. L'ensemble de la légende contient leafcare et homegarden. L'ensemble du commentaire du propriétaire contient homegarden, soilmix et leafcare. Les tags partagés sont leafcare et homegarden. Le tag uniquement commentaire est soilmix. L'ensemble uniquement légende est vide.

Six occurrences de hashtags dans la légende et le commentaire deviennent trois clés distinctes utilisées par le propriétaire. L'occurrence en double de soilmix reste dans les données de provenance. Le tag de vente de plantes issu de C2 est exclu de l'ensemble utilisé par le propriétaire, mais il reste dans les données sources. Si C1 n'est pas visible lors d'une autre exécution, dites que les tags du commentaire du propriétaire sont indisponibles, au lieu de dire que le propriétaire n'a utilisé aucun hashtag de commentaire.

Dans le tableau ci-dessous, `Manual post-owner match` est une vérification du lecteur : le `ownerId` du commentaire correspond au compte qui possède la publication. L'intitulé français de cette colonne est Correspondance manuelle publication-propriétaire. Le champ natif `ownerVerified` est le champ du badge public, pas une preuve de propriété de la publication. Les valeurs de badge n'ont pas été fournies dans les données fictives, elles restent donc inconnues. La valeur `Active` est la décision de revue du lecteur inscrite Active dans les lignes du tableau, et la valeur `Excluded` est la décision de revue inscrite Exclu. Ce ne sont pas un statut natif du jeu de données, parce que l'Actor n'a aucun champ de statut de jeu de données. Les champs natifs `postUrl`, `postId` et `postShortCode` sont conservés avec chaque ligne de provenance réelle ; la clé de publication du lecteur, P1, sert à la fiction, et les URL et identifiants réels non fournis sont marqués comme inconnus plutôt que fabriqués.

| Clé de publication | URL de la publication | ID de la publication | Code court de la publication | Source | Correspondance manuelle publication-propriétaire | Tag brut | Clé normalisée | Collecté le | Statut |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| P1 | Inconnu | Inconnu | Inconnu | Légende | Vrai | #LeafCare | leafcare | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | Légende | Vrai | #HomeGarden | homegarden | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | C1 | Vrai | #HomeGarden | homegarden | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | C1 | Vrai | #SoilMix | soilmix | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | C1 | Vrai | #LeafCare | leafcare | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | C1 | Vrai | #SoilMix | soilmix | 2026-10-13 | Active |
| P1 | Inconnu | Inconnu | Inconnu | C2 | Faux | #PlantSale | plantsale | 2026-10-13 | Exclu |

## Action suivante

Lancez votre échantillon pilote avec l'Actor [Instagram Comments Scraper](https://apify.com/chronometrica/instagram-comments-scraper) et l'entrée du préréglage [Task](https://apify.com/chronometrica/instagram-comments-scraper/examples/instagram-comments-scraper) pour collecter les lignes de commentaires de premier niveau avant de vérifier la provenance des tags.

## Sources et lectures complémentaires

- [Instagram Comments Scraper Actor](https://apify.com/chronometrica/instagram-comments-scraper)
- [Instagram Comments Scraper Task](https://apify.com/chronometrica/instagram-comments-scraper/examples/instagram-comments-scraper)
- [Question de recherche historique](https://www.reddit.com/r/webscraping/comments/aefai8/how_can_i_webscrape_instagram_hashtags_that_are/)