Ejemplo n.º 1
0
 def new_character(self, *arguments, **keywords):
     """Return a Character object."""
     # XXX: not really useful...
     if keywords.has_key('name'):
         if not isinstance(keywords['name'], UnicodeType):
             keywords['name'] = unicode(keywords['name'],
                                         encoding, 'replace')
     elif len(arguments) > 1:
         if not isinstance(arguments[1], UnicodeType):
             arguments[1] = unicode(arguments[1], encoding, 'replace')
     return Character.Character(accessSystem=self.accessSystem,
                                 *arguments, **keywords)
Ejemplo n.º 2
0
    def search_character(self, name, results=None):
        """Return a list of Character objects for a query for the given name.

        The results argument is the maximum number of results to return."""
        if results is None:
            results = self._results
        try:
            results = int(results)
        except (ValueError, OverflowError):
            results = 20
        res = self._search_character(name, results)
        return [Character.Character(characterID=self._get_real_characterID(pi),
                data=pd, modFunct=self._defModFunct,
                accessSystem=self.accessSystem) for pi, pd in res][:results]
Ejemplo n.º 3
0
    def get_character(self, characterID, info=Character.Character.default_info,
                    modFunct=None):
        """Return a Character object for the given characterID.

        The characterID is something used to univocally identify a character;
        it can be the imdbID used by the IMDb web server, a file
        pointer, a line number in a file, an ID in a database, etc.

        info is the list of sets of information to retrieve.

        If specified, modFunct will be the function used by the Character
        object when accessing its text fields (like 'biography')."""
        characterID = self._normalize_characterID(characterID)
        characterID = self._get_real_characterID(characterID)
        character = Character.Character(characterID=characterID,
                                accessSystem=self.accessSystem)
        modFunct = modFunct or self._defModFunct
        if modFunct is not None:
            character.set_mod_funct(modFunct)
        self.update(character, info)
        return character
Ejemplo n.º 4
0
 def new_character(self, *arguments, **keywords):
     """Return a Character object."""
     # XXX: not really useful...
     return Character.Character(accessSystem=self.accessSystem,
                                *arguments,
                                **keywords)