TikTok Scraper : Un Guide Complet pour Extraire des Données

En résumé

📜 Section 📊 Contenu
🌐 Introduction à TikTok Plateforme lancée en 2016, avec plus de 1.5 milliard d’utilisateurs en 2023. Populaire surtout chez les jeunes aux États-Unis et en Europe.
🎯 Cible et Avantages Principalement utilisé par la génération Z pour augmenter la notoriété des marques. 87% des marketeurs trouvent la vidéo efficace pour la visibilité de la marque.
🔍 Démographie et Utilisation Forte utilisation par les jeunes, avec des statistiques détaillées sur l’utilisation par pays et l’impact publicitaire.
🛠️ Scraper de Profil TikTok Permet d’extraire des données de profil telles que type de profil, ID, biographie, nombre de followers, etc.
🏷️ Scraper de Hashtags TikTok Collecte de données autour de hashtags spécifiques, incluant le type, ID, description, et nombre de vues.
📈 Pourquoi Utiliser le Scraping TikTok? Pour analyser les tendances, générer des leads et effectuer des analyses de sentiments à partir des commentaires.
🤖 Comment Utiliser le Scraping TikTok? Utilisation de bibliothèques Python comme httpx et parsel pour envoyer des requêtes HTTP et analyser le HTML.
🔚 Conclusion Le scraping de TikTok est un outil puissant pour extraire des informations utiles, nécessitant des pratiques éthiques et légales.

TikTok est une plateforme de médias sociaux populaire lancée en septembre 2016, centrée sur le partage de courtes vidéos divertissantes. En 2023, TikTok comptait plus de 1,5 milliard d’utilisateurs, avec une prévision de 2 milliards en 2024. TikTok est particulièrement populaire parmi les jeunes aux États-Unis et en Europe, avec plus de 500 millions d’utilisateurs actifs dans le monde.

La génération Z est la principale cible de TikTok, offrant une opportunité prometteuse pour accroître la notoriété de la marque et atteindre de nouveaux publics. Avec 87 % des marketeurs reconnaissant que la vidéo est un outil efficace pour améliorer la visibilité de la marque, TikTok se positionne à l’avant-garde des tendances.

Le contenu et les tendances de l’application sont une mine d’or pour les marques et leur stratégie marketing. Collecter et analyser ces données est essentiel pour comprendre les habitudes de consommation et les besoins des jeunes utilisateurs.

Démographie et Utilisation de TikTok

  • 34 % des utilisateurs ont entre 16 et 24 ans, et 32 % ont entre 25 et 34 ans.
  • 25 % des utilisateurs de TikTok ont entre 10 et 19 ans.
  • 16 % des adultes connectés utilisent l’application au moins une fois par jour.
  • Aux États-Unis, TikTok est plus populaire que Facebook parmi les 13-16 ans, avec près de 35 % des utilisateurs de cette tranche d’âge utilisant TikTok, contre 32 % pour les 17-21 ans.
  • Les données démographiques d’App Annie pour les États-Unis montrent que les femmes représentent plus de 60 % des utilisateurs actifs, avec plus de 26 % étant de jeunes adolescentes.
  • Au Royaume-Uni, les utilisateurs passent 66 minutes par jour sur l’application et ouvrent TikTok 13 fois en 24 heures.
  • Les utilisateurs norvégiens ouvrent l’application 17 fois par jour, totalisant 74 minutes.
  • 49 % des utilisateurs de TikTok ont déclaré avoir acheté un produit ou un service après avoir vu une publicité, une promotion ou un avis sur la plateforme.
  • L’engagement est un autre indicateur montrant le succès de TikTok, avec plus de 73 % des utilisateurs mensuels ouvrant l’application plusieurs fois par mois.
  • TikTok affiche les taux d’engagement les plus élevés, avec des taux d’engagement moyens dépassant 22 % pour les célébrités TikTok ayant entre 100 000 et 10 millions de followers.

Scraper TikTok : Vue d’ensemble

Scraper de Profil TikTok

Notre API de scraping TikTok permet d’extraire des données précieuses des pages de profil TikTok. Entrez une URL de profil TikTok et collectez les données nécessaires :

  • Type de profil
  • ID d’influenceur
  • Biographie
  • Profil privé ou vérifié
  • Lien bio
  • URL de la photo de profil
  • ID
  • Surnom
  • Avatar
  • Nombre de followers
  • Nombre de followings
  • Cœurs
  • Nombre de vidéos
  • Top vidéos

Exemple de données extraites d’un profil TikTok :

<div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium">
<div class="overflow-y-auto p-4" dir="ltr"><code class="!whitespace-pre hljs language-json"><span class="hljs-punctuation">{</span>
<span class="hljs-attr">"type"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"profile"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"influencer_id"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"6615209867715051526"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"biography"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"Paris Saint-Germain’s official account 🔴🔵 Compte officiel #ICICESTPARIS"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"is_private"</span><span class="hljs-punctuation">:</span> <span class="hljs-literal"><span class="hljs-keyword">false</span></span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"is_verified"</span><span class="hljs-punctuation">:</span> <span class="hljs-literal"><span class="hljs-keyword">true</span></span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"bio_link"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"linktr.ee/PSG"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"profile_pic_url_hd"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/profile_pic_hd.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"id"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"6615209867715051526"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"nickname"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"PSG"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"avatar"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/avatar.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"follower_count"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">1000000</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"following_count"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">100</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"hearts"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">5000000</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"video_count"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">100</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"top_videos"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">[</span>
<span class="hljs-punctuation">{</span>
<span class="hljs-attr">"id"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"123456789"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"description"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"Amazing goal!"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"comments"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">500</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"shares"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">200</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"plays"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">1000000</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"thumbnail"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/thumbnail.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"username"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"psg_official"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"video_info"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">{</span>...<span class="hljs-punctuation">}</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"music_info"</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">{</span>...<span class="hljs-punctuation">}</span>
<span class="hljs-punctuation">}</span>
<span class="hljs-punctuation">]</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"image"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/profile_image.jpg"</span>
<span class="hljs-punctuation">}</span>
</code></div>
<div dir="ltr">

Scraper de Hashtags TikTok

Extrayez et collectez toutes les données liées à un hashtag avec notre API de scraping TikTok. Remplissez le hashtag et obtenez les données nécessaires :

  • Type
  • ID
  • Titre
  • Description
  • Image de profil
  • Statut
  • Nombre de vidéos
  • Nombre de vues
  • Top vidéos

Exemple de données extraites d’un hashtag TikTok :

<div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium">
<div class="overflow-y-auto p-4" dir="ltr"><code class="!whitespace-pre hljs language-json"><span class="hljs-punctuation">{</span>
<span class="hljs-attr">"collected_videos_count"</span><span class="hljs-punctuation">:</span> <span class="hljs-number">30</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"id"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"1601336200518658"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"title"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"catsoftiktok"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"desc"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"Meow."</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"profileLarger"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/profile_larger.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"profileMedium"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/profile_medium.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"profileThumb"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/profile_thumb.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"coverLarger"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/cover_larger.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"coverMedium"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/cover_medium.jpg"</span><span class="hljs-punctuation">,</span>
<span class="hljs-attr">"coverThumb"</span><span class="hljs-punctuation">:</span> <span class="hljs-string">"https://example.com/cover_thumb.jpg"</span>
<span class="hljs-punctuation">}</span>
</code></div>
<div dir="ltr">

Pourquoi Utiliser le Scraping TikTok ?

Le scraping de TikTok offre de nombreux avantages :

  1. Analyser les tendances : Les tendances sur TikTok changent rapidement, rendant difficile la mise à jour des préférences des utilisateurs. Le scraping permet de capturer ces changements efficacement et d’améliorer les stratégies marketing pour s’aligner sur les intérêts des utilisateurs.
  2. Génération de leads : Identifiez des opportunités marketing et de nouveaux clients en reconnaissant les influenceurs avec une base de fans pertinente pour votre domaine d’activité.
  3. Analyse de Sentiments : Le scraping de TikTok est une bonne source pour collecter des données textuelles trouvées dans les commentaires, qui peuvent être analysées par des modèles d’analyse de sentiments pour recueillir des opinions sur un sujet donné.

Comment Utiliser le Scraping TikTok ?

Pour scraper TikTok, vous pouvez utiliser des bibliothèques Python telles que httpx pour envoyer des requêtes HTTP, parsel pour analyser le HTML, et JMESPath pour affiner les ensembles de données JSON. Voici un exemple de code pour scraper les profils TikTok :

<div class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium">
<div class="overflow-y-auto p-4" dir="ltr"><code class="!whitespace-pre hljs language-python"><code class="!whitespace-pre hljs language-python"><span class="hljs-keyword">import</span> asyncio
<span class="hljs-keyword">import</span> json
<span class="hljs-keyword">from</span> typing <span class="hljs-keyword">import</span> <span class="hljs-type">List</span>, <span class="hljs-type">Dict</span>
<span class="hljs-keyword">from</span> httpx <span class="hljs-keyword">import</span> AsyncClient, Response
<span class="hljs-keyword">from</span> parsel <span class="hljs-keyword">import</span> Selector
<span class="hljs-keyword">from</span> loguru <span class="hljs-keyword">import</span> logger <span class="hljs-keyword">as</span> log</code></code>client = AsyncClient(
http2=<span class="hljs-literal">True</span>,
headers={
<span class="hljs-string">"Accept-Language"</span>: <span class="hljs-string">"en-US,en;q=0.9"</span>,
<span class="hljs-string">"User-Agent"</span>: <span class="hljs-string">"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"</span>,
<span class="hljs-string">"Accept"</span>: <span class="hljs-string">"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"</span>,
<span class="hljs-string">"Accept-Encoding"</span>: <span class="hljs-string">"gzip, deflate, br"</span>,
},
)<code class="!whitespace-pre hljs language-python"><code class="!whitespace-pre hljs language-python"></code></code><span class="hljs-keyword">def</span> <span class="hljs-title function_">parse_profile</span>(<span class="hljs-params">response: Response</span>):
selector = Selector(response.text)
data = selector.xpath(<span class="hljs-string">"//script[@id='__UNIVERSAL_DATA_FOR_REHYDRATION__']/text()"</span>).get()
profile_data = json.loads(data)[<span class="hljs-string">"__DEFAULT_SCOPE__"</span>][<span class="hljs-string">"webapp.user-detail"</span>][<span class="hljs-string">"userInfo"</span>]
<span class="hljs-keyword">return</span> profile_data<code class="!whitespace-pre hljs language-python"><code class="!whitespace-pre hljs language-python"></code></code><span class="hljs-keyword">async</span> <span class="hljs-keyword">def</span> <span class="hljs-title function_">scrape_profiles</span>(<span class="hljs-params">urls: <span class="hljs-type">List</span>[<span class="hljs-built_in">str</span>]</span>) -> <span class="hljs-type">List</span>[<span class="hljs-type">Dict</span>]:
to_scrape = [client.get(url) <span class="hljs-keyword">for</span> url <span class="hljs-keyword">in</span> urls]
data = []
<span class="hljs-keyword">for</span> response <span class="hljs-keyword">in</span> asyncio.as_completed(to_scrape):
response = <span class="hljs-keyword">await</span> response
profile_data = parse_profile(response)
data.append(profile_data)
log.success(<span class="hljs-string">f"scraped <span class="hljs-subst">{<span class="hljs-built_in">len</span>(data)}</span> profiles from profile pages"</span>)
<span class="hljs-keyword">return</span> data

Conclusion

En résumé, le scraping TikTok est une méthode puissante pour extraire des données précieuses des profils et hashtags TikTok. En utilisant des techniques avancées et des API dédiées, vous pouvez collecter et analyser des données pour améliorer vos stratégies marketing, générer des leads et réaliser des analyses de sentiments. Assurez-vous de suivre les pratiques éthiques et légales pour garantir un scraping responsable et conforme.

Pour aller plus loin

Ebook sur comment développer son entreprise

Développez votre entreprise

Un condensé en 20 pages vous permettant d’avoir une vue d’ensemble des solutions que vous pouvez mettre en place pour votre entreprise. Les chapitres sont dans l’ordre d’exécution lors de la création de votre entreprise.

Kevin Grillot

Kevin GRILLOT

Le plus grand échec, est de ne pas avoir le courage d’oser