source: internals/2016/aptoideimagesdetector/trunk/explicit_content_detector/API/Explicit_detector/mature_app_detector_api.py @ 16448

Last change on this file since 16448 was 16448, checked in by dferreira, 3 years ago

File organization totally changed

File size: 1.6 KB
Line 
1# Aptoide, 2016
2# Diogo Ferreira
3# Final Version of API for "Maturity App Detector"
4
5import request
6import urllib
7import urllib2
8import json
9from bs4 import BeautifulSoup
10import analyse_app
11
12def is_mature(app_id):
13
14        url = "http://webservices.aptoide.com/webservices/3/getApkInfo/id:"
15        print "Getting model..."
16        illust2vec = analyse_app.get_model()
17#       try:
18        webpage = urllib2.urlopen(url+str(app_id)+"/json")
19        soup = BeautifulSoup(webpage, "lxml")
20                       
21        text = soup.get_text()
22
23        page = json.loads(text)
24        if page['status']!='FAIL':
25
26                print "Fetching data..."
27                title = page['meta']['title']
28
29                description = page['meta']['description']
30
31                categories = []
32
33                for cat in page['meta']['categories']['standard']:
34                        categories.append(cat['name'])
35
36                for cat in page['meta']['categories']['custom']:
37                        categories.append(cat['name'])
38
39                scr = []
40                scr_hd = []
41
42                if 'sshots' in page['media']:
43                        for s in page['media']['sshots']:
44                                scr.append(s)
45
46                if 'sshots_hd' in page['media']:
47                        for s in page['media']['sshots_hd']:
48                                scr_hd.append(s['path'])
49
50                min_age = page['meta']['min_age']
51
52                icon = page['apk']['icon']
53
54                icon_hd = []
55                if 'icon_hd' in page['apk']:
56                        icon_hd = page['apk']['icon_hd']
57
58
59                icons = icon+icon_hd
60                screenshots = scr+scr_hd
61                size = len(description)
62                print "Analysing app..."
63                dist = analyse_app.analyse_app(illust2vec, icons, screenshots, description,''.join(categories), min_age, size, title)
64                exp = False
65                if dist.prob('exp')>0.5:
66                        exp = True
67
68                response = {"explicit": str(exp)}
69                print response
70
71        else:
72                print "App does not exist"
73        #except:
74                #print "Error during parsing"
75
76if __name__=="__main__":
77        is_mature(711422)
Note: See TracBrowser for help on using the repository browser.