https://bugzilla.wikimedia.org/show_bug.cgi?id=55322
--- Comment #1 from Kunal Mehta (Legoktm) legoktm.wikipedia@gmail.com --- Logged In: YES user_id=855050 Originator: NO
The reason for this is that PreloadingGenerator calls wikipedia.getAll(), which uses the wiki's [[Special:Export]] page to retrieve the page(s); the data structure returned by [[Special:Export]] does not include the protection status, so it is impossible to determine whether a preloaded page is protected. The only way I can see to fix this within the existing framework is to have canBeEdited() call self.get(force=True) instead of just self.get(), but that would completely defeat the purpose of preloading the pages. The other alternative is your suggestion of using the API, but this would break backwards-compatibility for many wiki families, and I think that is better addressed in the rewrite branch.