Dominicbm created this task.
Dominicbm added projects: Pywikibot, Pywikibot-Commons.
Restricted Application added subscribers: pywikibot-bugs-list, Aklapper.

TASK DESCRIPTION
  I am using the `CategorizedPageGenerator` method on a Wikimedia Commons 
categories to get a list of all its members (and, recursively, subcat members). 
I am using it on 
'Category:Media_contributed_by_the_Digital_Public_Library_of_America' with the 
following code:
  
    cat = pywikibot.Category(site, 
'Category:Media_contributed_by_the_Digital_Public_Library_of_America')
    for file in pagegenerators.CategorizedPageGenerator(cat, recurse=True, 
namespaces='6'):
        [does stuff]
  
  When  I run this, I the following warning repeatedly:
  `WARNING: API warning (result): This result was truncated because it would 
otherwise be larger than the limit of 12,582,912 bytes.`
  
  I am afraid this means I cannot ever access the full results set, and, 
presumably, anyone trying to use page generators for page sets that include 
large/many PDFs or DJVu files also will never be  able to access  all the 
pages. I see something similar has been reported at T195992 
<https://phabricator.wikimedia.org/T195992>, but that task is a bit confusing, 
because the reporter appears to have been trying to exclude files from the 
query anyway, and just wanted category names. I actually do want all files.
  
  The discussion at T101400 <https://phabricator.wikimedia.org/T101400> is 
clarifying, since it seems the cause of this warning is likely that there can 
be a large amount of data returned when `iiprop=metadata` is requested for, for 
example, a PDF with a text layer—or, in the case of a Commons category, 
potentially 500 of them at once (I'm assuming it requests the max, by default?).
  
  The problem is that, for my use case, I really just want page titles, but I 
guess since Pywikibot wants to generate all the  page objects using all the 
metadata, there is no way around this error currently. Since T89971 
<https://phabricator.wikimedia.org/T89971> has been around for years and 
appears stalled, I wonder if there is a way to solve this in Pywikibot. For 
example, if it receives this warning, could Pywikibot back up and use 
successive smaller `gcmlimit` (or whatever method it is using does) values 
until it  gets under the 12MB response limitation? Or, could there be a filter 
option to turn off image metadata, if it is not actually necessary for the  
user's needs?

TASK DETAIL
  https://phabricator.wikimedia.org/T253591

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: Dominicbm
Cc: Aklapper, pywikibot-bugs-list, Dominicbm, JohnsonLee01, Dijkstra, Zkhalido, 
Viztor, Wenyi, Tbscho, MayS, Mdupont, JJMC89, Dvorapa, Altostratus, 
Avicennasis, mys_721tx, jayvdb, Masti, Alchimista, Rxy
_______________________________________________
pywikibot-bugs mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikibot-bugs

Reply via email to