MZMcBride added a comment.
Using the exact URL from the task description, I'm consistently getting a bad
response:
>>> from subprocess import check_output
>>> args = ['curl', '-s',
'https://www.wikidata.org/w/api.php?action=wbgetentities&redirects=no&props=claims&format=json&ids=Q18407428|Q18407424|Q18407421|Q18407418|Q18407262|Q18407245|Q18407242|Q18407240|Q18407236|Q18407234|Q18407233|Q18407228|Q18407225|Q18407224|Q18407221|Q18407218|Q18407127|Q18407044|Q18407038|Q18407009|Q18407008|Q18407006|Q18407005|Q18407004']
>>> output = check_output(args)
>>> output[-30:]
'nk":"normal"}]}}},"succe\'5\xfe+\x0b\x7f'
I got called away while testing. Using the same URL later, I'm now getting a
different bad response:
>>> output[-30:]
'nk":"normal"}]}}},"succe\'e>\x17\'\x7f'
I thought both `api.php` request URLs and responses were typically not
cached. However, if I append a cache-buster (in this case, `&4`), I get
non-corrupt output:
>>> from subprocess import check_output
>>> args = ['curl', '-s',
'https://www.wikidata.org/w/api.php?action=wbgetentities&redirects=no&props=claims&format=json&ids=Q18407428|Q18407424|Q18407421|Q18407418|Q18407262|Q18407245|Q18407242|Q18407240|Q18407236|Q18407234|Q18407233|Q18407228|Q18407225|Q18407224|Q18407221|Q18407218|Q18407127|Q18407044|Q18407038|Q18407009|Q18407008|Q18407006|Q18407005|Q18407004&4']
>>> output = check_output(args)
>>> output[-30:]
'nk":"normal"}]}}},"success":1}'
Weird.
TASK DETAIL
https://phabricator.wikimedia.org/T133866
EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: BBlack, MZMcBride
Cc: Trung.anh.dinh, MZMcBride, Anomie, Yurivict, TerraCodes, Orlodrim, BBlack,
akosiaris, zhuyifei1999, elukey, ema, Aklapper, hoo, D3r1ck01, Izno,
Wikidata-bugs, aude, Mbch331, Jay8g, jeremyb
_______________________________________________
Wikidata-bugs mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs