def test_site_get_siteinfo(self): site = wptools.site(silent=SILENT_FLAG) site.cache = { 'siteinfo': siteinfo.cache, 'sitevisitors': siteviews.cache } site.get_info(wiki='en.wikipedia.org') site._set_data('siteinfo') site._set_data('sitevisitors') data = site.data self.assertEqual(data['activeusers'], 126428) self.assertEqual(data['admins'], 1248) self.assertEqual(data['articles'], 5478623) self.assertEqual(data['edits'], 910438071) self.assertEqual(data['images'], 854622) self.assertEqual(len(data['info']), 49) self.assertEqual(data['pages'], 43112467) self.assertEqual(data['site'], 'enwiki') self.assertEqual(data['users'], 31786628) self.assertEqual(len(data['mostviewed']), 478) self.assertEqual(data['siteviews'], 233991363) self.assertEqual(data['visitors'], 63079969) site.top() site.top(wiki='en.wikipedia.org', limit=10) self.assertTrue('requests' not in site.data)
def test_site_get_info(self): """ Get info about a random site """ site = wptools.site(silent=True) site.get_sites() self.assertTrue(site.data['random'] is not None) site.get_info(site.data['random']) self.assertTrue(site.data['visitors'] >= 0) site.top(limit=10)
def popular(lang): """ returns list of most popular pages """ site = wptools.site(silent=True) if lang: site.get_info("%s.wikipedia.org" % lang) else: site.get_info() return [x['title'] for x in site.data['mostviewed']]
def test_site_get_info(self): """ Get info about a random site """ site = wptools.site(silent=True) site.get_sites() self.assertTrue(site.data['random'] is not None) site.get_info(site.data['random']) self.assertTrue(site.data['visitors'] >= 0) site.top()
def test_site_query(self): site = wptools.site() qobj = wptools.query.WPToolsQuery(wiki='commons.wikimedia.org') query = site._query('sitematrix', qobj) self.assertTrue(query.startswith('https://commons.wikimedia.org')) qobj = wptools.query.WPToolsQuery() query = site._query('siteinfo', qobj) self.assertTrue('&meta=siteinfo|siteviews' in query) self.assertTrue('&siprop=general|statistics' in query) self.assertTrue('&list=mostviewed&pvimlimit=max' in query) query = site._query('sitevisitors', qobj) self.assertTrue('&meta=siteviews&pvismetric=uniques' in query)
def test_site_get_sites(self): site = wptools.site(silent=True) site.cache = {'sitematrix': sitematrix.cache} site.get_sites() site._set_data('sitematrix') self.assertEqual(len(site.data['sites']), 741) self.assertTrue(site.data.get('random') is not None) site.get_sites(domain='wikipedia.org') site._set_data('sitematrix') self.assertEqual(len(site.data['sites']), 290) # filter by domain site.params.update({'domain': 'wikipedia.org'}) site._set_data('sitematrix') data = site.data self.assertEqual(len(data['sites']), 290)
def test_site_init(self): site = wptools.site() self.assertEqual(site.params, {'lang': 'en'}) self.assertEqual(site.flags, {'silent': False, 'verbose': False})
} outdict = {'langs': []} errorlog = open('errorlog.txt', 'w') """ for franchise in franchises: page = wptools.page(franchise) #page.get_parse() #for elem in page.data['infobox']: # print(elem) page.get_wikidata() print(page.data['wikidata']) """ for lang in wiki_langs_dict: try: site = wptools.site() site.top(lang + '.wikipedia.org') lang_dict = { 'shortname': lang, 'longname': wiki_langs_dict[lang], 'top_articles': [] } for i in range(0, 25): p = site.data['mostviewed'][i] try: page = wptools.page(p['title']) page.get_more() if 'categories' in page.data: p['categories'] = page.data['categories']