Giter Site home page Giter Site logo

playdrone's Introduction

PlayDrone

This repository contains the code used in the following paper:

A Measurement Study of Google Play

The talk can be watched on Youtube: http://youtu.be/xS0lyL_0OAM

The slides are available here: http://viennot.com/playdrone-slides.pdf

The paper can be downloaded here: http://viennot.com/playdrone.pdf


The code is research quality code. It's poorly documented, and have no test suite.

Most of the code lies in lib/ and app/models/.

Here are the basic steps to process an app in dev mode:

  1. Make sure you have Ruby and Java installed

  2. Make sure you have Elasticsearch and Redis running

  3. Run bundle install

  4. Run rails c

  5. Add a google account with Account.create(:email => 'email', :password => 'password', :android_id => 'id'). An android id can be generated with Android Checkin.

  6. Running Account.first_usable should not block, but return something.

  7. Run Stack.process_app(:app_id => 'com.facebook.katana').

  8. You should see the facebook app repo in the repos directory.


If you want to go in production and launch the crawler, you can use the PlayDrone Kitchen.

Follow the instructions, edit deploy/settings.rb and run cap deploy:setup and cap deploy.

If everything works out (good luck), you'll be able to kick of jobs from a rails console. Try Stack.process_app(:app_id => 'com.facebook.katana'), and PlayDrone should discover at least half of the market by looking at related apps. Note that to increase the throughput, you may need to add more Google accounts.

Here's what you can expect to see once everything is running in the graphite dashboard:

Dashboard


GET ALL THE APPS!

PlayDrone is released under the MIT license.

playdrone's People

Contributors

nviennot avatar psphicas avatar ewgarci avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.