Brilliant, that's exactly what I was looking for—both the simple API and json API look very useful. Thanks! —Eric On Feb 12, 2019, at 10:31 AM, Dustin Ingram <di@python.org<mailto:di@python.org>> wrote: Hashes are also available via PyPI's JSON API<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwarehouse.readthedocs.io%2Fapi-reference%2Fjson%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=hfrjMEQo7JANTL5d5ggUg%2F8jHDvbn23IthKMPKtiMnI%3D&reserved=0>. On Tue, Feb 12, 2019 at 7:15 AM Tzu-ping Chung <uranusjr@gmail.com<mailto:uranusjr@gmail.com>> wrote: I believe you’re looking for the PEP 503 simple API<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.python.org%2Fdev%2Fpeps%2Fpep-0503%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=gVBgVJlyxh3mrhY8m5eghqlHMLgVhPNLlyau4F58QBI%3D&reserved=0>. This is what pip uses to find the hashes (among other things) as well. The hash value is included as a fragment in the URL. TP On 12/2/2019, at 23:03, Eric Peterson <epeterson@interactivebrokers.com<mailto:epeterson@interactivebrokers.com>> wrote: Hi all, When in the "Download files" section of a project on PyPI, next to each download there is a convenient "SHA256" link that will copy the SHA-256 fingerprint for that file to the clipboard. I am wondering if there is a programmatic way to access the SHA-256 for a file (besides just scraping the web page)? Ideally there would be some way to construct a URL based on the name of the file that, when called, would return the fingerprint. Thanks, Eric -- Distutils-SIG mailing list -- distutils-sig@python.org<mailto:distutils-sig@python.org> To unsubscribe send an email to distutils-sig-leave@python.org<mailto:distutils-sig-leave@python.org> https://mail.python.org/mailman3/lists/distutils-sig.python.org/<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.python.org%2Fmailman3%2Flists%2Fdistutils-sig.python.org%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=LDJ0h76qOo3KO%2FQHIgpIJRY99Z6i51EOxwmo1%2FcnNYE%3D&reserved=0> Message archived at https://mail.python.org/archives/list/distutils-sig@python.org/message/FLNOENK2525RMHGL7SV2SBUXKSOJHSEZ/<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.python.org%2Farchives%2Flist%2Fdistutils-sig%40python.org%2Fmessage%2FFLNOENK2525RMHGL7SV2SBUXKSOJHSEZ%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=fOSn0DSa5F8kXTs0X1tEvxcwrMkeF92ZZiOWKoFxOaI%3D&reserved=0> -- Distutils-SIG mailing list -- distutils-sig@python.org<mailto:distutils-sig@python.org> To unsubscribe send an email to distutils-sig-leave@python.org<mailto:distutils-sig-leave@python.org> https://mail.python.org/mailman3/lists/distutils-sig.python.org/<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.python.org%2Fmailman3%2Flists%2Fdistutils-sig.python.org%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=LDJ0h76qOo3KO%2FQHIgpIJRY99Z6i51EOxwmo1%2FcnNYE%3D&reserved=0> Message archived at https://mail.python.org/archives/list/distutils-sig@python.org/message/EY2SRYRV5NDKOSISK4JEX34YOOLUQ5ED/<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.python.org%2Farchives%2Flist%2Fdistutils-sig%40python.org%2Fmessage%2FEY2SRYRV5NDKOSISK4JEX34YOOLUQ5ED%2F&data=01%7C01%7Cepeterson%40interactivebrokers.com%7C968e25ae764145ff524808d690ff426e%7C7abd04ef837d48e69ba869d84f65a110%7C0&sdata=MEspyuSE3%2FmDYNEhtGaav%2B8oJiKnnuQVDYjUNnMt2vM%3D&reserved=0>