web-dev-qa-db-fra.com

Est-il possible d'obtenir le nombre de téléchargements d'une application à partir de Google Play?

J'essaie d'obtenir le nombre de téléchargements d'une application que j'ai téléchargée sur Google Play.

Je cherche une API (ou quelque chose de similaire) qui me renvoie le nombre de téléchargements avec l'authentification de l'utilisateur. Je ne veux pas d'applications tierces (comme AppAnnie).

Ce serait formidable si cela pouvait se trouver sur PHP et j'ai découvert qu'il existe une bibliothèque que je pense être l'API la plus proche que j'ai pu trouver pour obtenir des données à partir d'applications Google.

Bibliothèque cliente des API Google pour PHP

mais je ne trouve aucune mention dans les applications Google Play.

Existe-t-il un moyen d'obtenir les téléchargements d'une application spécifique contenant les clés d'authentification?

Merci d'avance!

15
Francisco Romero

Ceci concerne les méta-données api. Vous pouvez regarder ci-dessous. 

https://developers.google.com/Android-publisher/api-ref/reviews

5
Uddhav Gautam

Utilisez la bibliothèque google-play-scraper pour obtenir les informations sur l'application ci-dessous:

Exemple:

$app = $scraper->getApp('com.mojang.minecraftpe');

Résultat:

array (
  'id' => 'com.mojang.minecraftpe',
  'url' => 'https://play.google.com/store/apps/details?id=com.mojang.minecraftpe',
  'image' => 'https://lh3.googleusercontent.com/30koN0eGl-LHqvUZrCj9HT4qVPQdvN508p2wuhaWUnqKeCp6nrs9QW8v6IVGvGNauA=w300',
  'title' => 'Minecraft: Pocket Edition',
  'author' => 'Mojang',
  'author_link' => 'https://play.google.com/store/apps/developer?id=Mojang',
  'categories' => array (
    'Arcade',
    'Creativity',
  ),
  'price' => '$6.99',
  'screenshots' => array (
    'https://lh3.googleusercontent.com/VkLE0e0EDuRID6jdTE97cC8BomcDReJtZOem9Jlb14jw9O7ytAGvE-2pLqvoSJ7w3IdK=h310',
    'https://lh3.googleusercontent.com/28b1vxJQe916wOaSVB4CmcnDujk8M2SNaCwqtQ4cUS0wYKYn9kCYeqxX0uyI2X-nQv0=h310',
    // [...]
  ),
  'description' => 'Our latest free update includes the Nether and all its inhabitants[...]',
  'description_html' => 'Our latest free update includes the Nether and all its inhabitants[...]',
  'rating' => 4.4726405143737793,
  'votes' => 1136962,
  'last_updated' => 'October 22, 2015',
  'size' => 'Varies with device',
  'downloads' => '10,000,000 - 50,000,000',
  'version' => 'Varies with device',
  'supported_os' => 'Varies with device',
  'content_rating' => 'Everyone 10+',
  'whatsnew' => 'Build, explore and survive on the go with Minecraft: Pocket Edition[...]',
  'video_link' => 'https://www.youtube.com/embed/D2Z9oKTzzrM?ps=play&vq=large&rel=0&autohide=1&showinfo=0&autoplay=1',
  'video_image' => 'https://i.ytimg.com/vi/D2Z9oKTzzrM/hqdefault.jpg',
)

EDIT: Obtenez facilement le nombre de téléchargements comme ci-dessous:

echo $app['downloads']; // Outputs: '10,000,000 - 50,000,000'

Ou si vous voulez la valeur de gauche:

$matches = null;
$returnValue = preg_match('/.*(?= -)/', '10,000,000 - 50,000,000', $matches);
echo $matches[0]; // Outputs: '10,000,000'

Ou si vous voulez la bonne valeur:

$matches = null;
$returnValue = preg_match('/(?<=- ).*/', '10,000,000 - 50,000,000', $matches);
echo $matches[0]; // Outputs: '50,000,000'

Puis convertissez-le facilement en entier en utilisant:

$count = null;
$returnValue = (int)preg_replace('/,/', '', $matches[0], -1, $count);
echo $returnValue; // Outputs: 10000000 or 50000000
3
Hasan Bayat

Vous devez Scrape it. De manière générale, et bien sûr dans ce cas particulier, lorsque le site Web (ici: Google Play) ne fournit pas d’API pour lui permettre d’accéder aux données souhaitées (du client), le Web scraping est l’une des meilleures méthodes pour collecter les informations demandées. .

Presque toutes les informations que vous pouvez voir sur une page Web peuvent être effacées. De nos jours, grâce aux améliorations considérables apportées aux racleurs Web, vous pouvez non seulement récupérer les données d'un site Web cible, mais aussi "l'explorer comme un utilisateur", "publier des informations sur un site Web via des formulaires", "se connecter en tant qu'utilisateur", etc. est devenu une routine pour tout racleur Web.

Il existe de très bons scrapeurs, comme Scrapy (probablement le plus réputé, écrit en Python) presque pour toutes les langues. Autant que je sache, PHP est le { Goutte écrit par le légendaire @fabpot de FriendsOfPHP .

À partir du POV d'extraction de données, Goutte prend en charge les "sélecteurs CSS" & XPath (car il utilise le robot d'indexation DOM de Symfony comme moteur d'analyse). Vous pouvez donc explorer le document comme vous le souhaitez pour extraire chaque information dans n’importe quel coin caché d’une page Web!

Vous pouvez aller très loin en grattant avec Goutte, mais juste comme un petit exemple pour saisir le "nombre d'installations" d'une page d'application ordinaire en un clin d'œil:

use Goutte\Client;

$Client = new Client();

/**
* @var \Symfony\Component\DomCrawler\Crawler 
*/
$Crawler = $Client->request('GET', "https://play.google.com/store/apps/details?id=com.somago.brainoperator&hl=en");

$numberOfInstalls = $Crawler->filter('div.details-section-contents div.meta-info')->eq(1)->filter('div.content')->eq(0)->text();

echo $numberOfInstalls;

Il imprimera simplement le "nombre de téléchargements" de jeu Brain Operator .

2
Behrad Khodayar

checkout this library 42 Matters donne le nombre de téléchargements, en donnant de nombreux autres

2
akshay_shahane

Ce projet https://github.com/ArcadiaConsulting/appstorestats est une API en Java permettant d'obtenir des statistiques de Google Play et de l'AppStore.

1
pablogupi

Avec App ID, vous pouvez l'obtenir à partir de API Google Play

Ou, si l'application vous appartient, vous pouvez exporter les statistiques depuis Google Cloud ( référence )

0
Feralheart