Let me reiterate that https://code.google.com/p/wikiteam/issues/detail?id=44 is a very urgent bug and we've seen no work on it in many months. We need an actual programmer with some knowledge of python to fix it and make the script work properly; I know there are several on this list (and elsewhere), please please help. The last time I, as a non-coder, tried to fix a bug, I made things worse (https://code.google.com/p/wikiteam/issues/detail?id=26).
Only after API is implemented/fixed, I'll be able to re-archive the 4-5 thousands wikis we've recently archived on archive.org (https://archive.org/details/wikiteam) and possibly many more. Many of those dumps contain errors and/or are just partial because of the script's unreliability, and wikis die on a daily basis. (So, quoting emijrp, there IS a deadline.)
Nemo
P.s.: Cc'ing some lists out of desperation; sorry for cross-posting.
I am beginning work on a port to PHP due to some issues regarding unit
testing for another project of mine (if you follow me on GitHub, you will
know). I hope to help out with fixing the script, but it is a good idea to
get someone who knows python (pywikipedia-l people) and the MediaWiki API
(mediawiki-api people) to help.
On Fri, Nov 9, 2012 at 6:27 PM, Federico Leva (Nemo) <nemow...@gmail.com>wrote:
> Only after API is implemented/fixed, I'll be able to re-archive the 4-5
> thousands wikis we've recently archived on archive.org (
> https://archive.org/details/**wikiteam<https://archive.org/details/wikiteam>)
> and possibly many more. Many of those dumps contain errors and/or are just
> partial because of the script's unreliability, and wikis die on a daily
> basis. (So, quoting emijrp, there IS a deadline.)
> Nemo
> P.s.: Cc'ing some lists out of desperation; sorry for cross-posting.
-- Regards,
Hydriz
We've created the greatest collection of shared knowledge in history. Help
protect Wikipedia. Donate now: http://donate.wikimedia.org
> You mentioned "a while back" for "apcontinue", show recent was it? This
> dump generator is attempting to archive all sorts of versions of
> MediaWiki, or so unless we write a backward compatibility handler in the
> script itself.
> ...and I agree, the code is in a total mess. We need to get someone to
> rewrite the whole thing, soon.
Well, that in an ideal world. In this one, the best would probably be suggestions for simple libraries to be used to solve such small problems? (Which can become very big if one doesn't follow API evolution very closely or know it's history from the beginning of time.)
> On Fri, Nov 9, 2012 at 11:50 PM, Brad Jorsch wrote:
> You're searching for the continue parameter as "apfrom", but this was
> changed to "apcontinue" a while back. Changing line 162 to something
> like this should probably do it:
> m = re.findall(r'<allpages (?:apfrom|apcontinue)="([^>]+)" />',
> xml)
> Note that for full correctness, you probably should omit both apfrom
> and apcontinue entirely from params the first time around, and send
> back whichever of the two is found by the above line in subsequent
> queries.
> Also, why in the world aren't you using an XML parser (or a JSON
> parser with format=json) to process the API response instead of trying
> to parse the XML using regular expressions?!
> On Fri, Nov 9, 2012 at 2:27 AM, Federico Leva (Nemo)
> <nemow...@gmail.com <mailto:nemow...@gmail.com>> wrote:
> > It's completely broken:
> > https://code.google.com/p/wikiteam/issues/detail?id=56 > > It will download only a fraction of the wiki, 500 pages at most per
> > namespace.
> On Fri, Nov 9, 2012 at 7:59 AM, Hydriz Wikipedia <ad...@alphacorp.tk> wrote:
>> You mentioned "a while back" for "apcontinue", show recent was it? This dump
>> generator is attempting to archive all sorts of versions of MediaWiki, or so
>> unless we write a backward compatibility handler in the script itself.
> Any wiki running version 1.19, or a 1.20 snapshot from before
> mid-July, would be returning the old parameter. If you do it right,
> though, there's little you have to do. Just use whichever keys are
> given you inside the <query-continue> node. Even with your regular
> expression mess, just capture which key is given as well as the value
> and use it as the key for your params dict.
P.s.: Small unreliable "temporary" things in MediaWiki, like the "powered by MediaWiki" sentence we grep for, are usually the most permanent ones, although I don't like it.
> On Fri, Nov 9, 2012 at 8:48 AM, Federico Leva (Nemo) <nemow...@gmail.com> wrote:
>> Well, that in an ideal world. In this one, the best would probably be
>> suggestions for simple libraries to be used to solve such small problems?
> Perhaps it could be made more clear in the doc (I think I'll go fix
> that now), but clients shouldn't be depending on the particular keys
> given inside the query-continue node beyond identifying which one
> belongs to the generator.
Thank you very much for expanding the page.
Was the query-continue node the same since the beginning of the API?
It may be obvious to you but it's not written anywhere I think, please stick a {{MW 1.12}} or whatever there if it's so.
>> On Fri, Nov 9, 2012 at 8:48 AM, Federico Leva (Nemo) <nemow...@gmail.com>
>> wrote:
>>> Well, that in an ideal world. In this one, the best would probably be
>>> suggestions for simple libraries to be used to solve such small problems?
>> Perhaps it could be made more clear in the doc (I think I'll go fix
>> that now), but clients shouldn't be depending on the particular keys
>> given inside the query-continue node beyond identifying which one
>> belongs to the generator.
> Thank you very much for expanding the page.
> Was the query-continue node the same since the beginning of the API?
> It may be obvious to you but it's not written anywhere I think, please
> stick a {{MW 1.12}} or whatever there if it's so.
So does that mean this problem that "It's completely broken" is now fixed?
I'm running a huge download of 64K+ page titles, and am now using the
"r806" version of dumpgenerator.py. The first 35K+ page titles were
downloaded with an older version). Both versions sure seem to be
downloading MORE than 500 pages per namespace, but I'm not sure, since I
don't know how you can tell if you are getting them all...
So is it fixed or not?
On Fri, Nov 9, 2012 at 4:27 AM, Federico Leva (Nemo) <nemow...@gmail.com>wrote:
> So does that mean this problem that "It's completely broken" is now fixed?
> I'm running a huge download of 64K+ page titles, and am now using the
> "r806" version of dumpgenerator.py. The first 35K+ page titles were
> downloaded with an older version). Both versions sure seem to be
> downloading MORE than 500 pages per namespace, but I'm not sure, since I
> don't know how you can tell if you are getting them all...
> So is it fixed or not?
> On Fri, Nov 9, 2012 at 4:27 AM, Federico Leva (Nemo) <nemow...@gmail.com>wrote:
> Nemo is referring to the dumpgenerator.py being broken on MediaWiki
> versions above 1.20, and it should not actually affect older MediaWiki
> versions.
> You can safely continue with your grab. :)
> On Sat, Nov 10, 2012 at 12:45 PM, Scott Boyd <scottd...@gmail.com> wrote:
>> So does that mean this problem that "It's completely broken" is now
>> fixed? I'm running a huge download of 64K+ page titles, and am now using
>> the "r806" version of dumpgenerator.py. The first 35K+ page titles were
>> downloaded with an older version). Both versions sure seem to be
>> downloading MORE than 500 pages per namespace, but I'm not sure, since I
>> don't know how you can tell if you are getting them all...
>> So is it fixed or not?
>> On Fri, Nov 9, 2012 at 4:27 AM, Federico Leva (Nemo) <nemow...@gmail.com>wrote: