Pybot Wiki
Advertisement
This page will INTRODUCE you to a basic topic.

A family file is a .py file that imparts the basic structure of the wiki you're editing to user-config.py. Without a correctly formatted family file you cannot establish a connection to the wiki, and thus you cannot edit it.

Family files contain information about the various namespaces on the wiki, the version of MediaWiki that is used on the wiki, and the name and language of the wiki.

You must have a unique family file for each wiki on which you edit.

Nomenclature and location[]

In a typical installation of pywikipedia, all family files reside in the families folder inside the pywikipedia folder. For Wikia wikis, the typical nomenclature for a family file is {{tt|{{SITENAME}}_wikia.family.py}}. For w:c:aybs, the name of the family file would be aybs_wikia.family.py. For w:c:icarly, it'd be icarly_wikia.family.py and so on. Wikis that were moved to Wikia from another location — like w:c:memoryalpha — can have a different nomenclature.

Example[]

Here is a typical family file for a Wikia wiki, w:c:oscars:

# -*- coding: utf-8  -*-
import family, config

class Family(family.Family):
    def __init__(self):
        family.Family.__init__(self)
        
        self.name = 'oscars_wikia'
        self.langs = { 'en':'oscars.wikia.com' }
        
        
        # Most namespaces are inherited from family.Family.
        self.namespaces[4] = {
            '_default': u'Oscars',
        }
        self.namespaces[5] = {
            '_default': u'Oscars talk',
        }
        self.namespaces[110] = {
            '_default': u'Forum',
        }
        self.namespaces[111] = {
            '_default': u'Forum talk',
        }
        self.namespaces[1100] = {
            '_default': u'RelatedVideos',
        }
        self.namespaces[1200] = {
            '_default': u'Message Wall',
        }
        self.namespaces[1201] = {
            '_default': u'Thread',
        }
        self.namespaces[2000] = {
            '_default': u'Board',
        }
        self.namespaces[2001] = {
            '_default': u'Board Talk',
        }
        self.namespaces[2002] = {
            '_default': u'Topic',
        }
        
        # A few selected big languages for things that we do not want to loop over
        # all languages. This is only needed by the titletranslate.py module, so
        # if you carefully avoid the options, you could get away without these
        # for another wikimedia family.
        
        self.languages_by_size = ['en','de']
    
    def version(self, code):
        return "1.19.2"
    
    def scriptpath(self, code):
        return ''
Advertisement