Hi.
This is definitely a family file configuration issue.
I believe that you should put in your local family file
def code2encoding(self, code): """Return the encoding for a specific language wiki""" return 'iso-8859-1' #instead of the standard utf-8
because your server is apparently using iso-8859-1 instead of utf-8 as an encoding.
(Someone, correct me if I'm wrong.)
Anyway the family files definitely need some documentation, a README, or something, because as of now, it is quite hard to figure what has to be redefined in a custom family file. Also, the heading of code2encoding and code2encodings need some more documentation, stating how exactly each function is used, and for what.
2008/2/20, Lee Francis Wilhelmsen lee.francis.wilhelmsen@gmail.com:
Hi again
OK, so no responses for my question from yesterday and I still can't figure this one out, so I will try to rephrase my question.
The following simple program gives an AssertionError on line 5188 in wikipedia.py.
import wikipedia as wi page = wi.Page(wi.getSite(), 'Main_Page') content = page.get()
The error message:
Traceback (most recent call last): File "C:\Dev\workbench\project\test.py", line 11, in <module> content = page.get() File "C:\Dev\pywikipedia\wikipedia.py", line 617, in get self._contents = self._getEditPage(get_redirect = get_redirect, throttle = throttle, sysop = sysop, nofollow_redirects=nofollow_redirects) File "C:\Dev\pywikipedia\wikipedia.py", line 666, in _getEditPage text = self.site().getUrl(path, sysop = sysop) File "C:\Dev\pywikipedia\wikipedia.py", line 4113, in getUrl self._getUserData(text, sysop = sysop) File "C:\Dev\pywikipedia\wikipedia.py", line 4134, in _getUserData blocked = self.isBlocked(sysop = sysop) File "C:\Dev\pywikipedia\wikipedia.py", line 3816, in isBlocked text = self.getUrl(u'%saction=query&meta=userinfo&uiprop=blockinfo' % self.api_address(), sysop = sysop) File "C:\Dev\pywikipedia\wikipedia.py", line 4102, in getUrl self.checkCharset(charset) File "C:\Dev\pywikipedia\wikipedia.py", line 5188, in checkCharset % (repr(self), self.charset, charset) AssertionError: charset for mylocalwiki:en changed from UTF-8 to iso-8859-1
Can someone tell me where I should be looking to find the error and briefly just explain what the problem may be?
Some relevant info:
- I'm running on Windows Vista SP1.
- I am running on MediaWiki 1.11.1 (updated today)
- My PyWikipedia codebase is from revision 5060 (updated today)
- My family file only overrides the methods hostname(), version() and
path() in the simplest form.
- My user-config.py looks like this: mylang='en' family='mylocalwiki' usernames['mylocalwiki']['en']=u'testbot' sysopnames['mylocalwiki']['en']=u'admin'
I would appreciate it if someone could explain why this is going wrong?
Regards Lee Francis
-- _____ In theory, there is no difference between theory and practice. But, in practice, there is. -- Jan L.A. van de Snepscheut
Pywikipedia-l mailing list Pywikipedia-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/pywikipedia-l