首页 > 解决方案 > Python:显示来自 http 响应的图像,图像内容类型为 image/png

问题描述

有人可以帮助我使用 python 3.8 显示以下格式的 json 响应(内容类型为 image/png)

现在,当内容类型是图像时,我得到图像的数据作为响应,它不是 base64 编码的。我需要以常规方式显示图像

以下是我看到的回复。

我能够使用下面的代码中的 python 2.7 成功显示图像。但我无法使用 python 3.8 做同样的事情

im = Image.open(StringIO.StringIO(response.content))
im.show()

     �PNG

IHDR D     S���  � IDATx���	�T՝?�v5n�'F0&����s��d9�LB��'�L\����0Q	#!.��D��01*�&$j4�mt�B"�"�(�
�Ⱦ�l���}�j��^�议����{��{�u�����}�ފ
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    h���G���jRmW��K���h���T{?՞K�o��      ��B8jɒ%�fΜ�oҤI���J�M�81L�2e����W���������NV(R[�a�=���~      ��0eʔ)aɒ%a���a׮]Z	��Y,Z�(<����ʡX��ϖ�~���^+�P
"v|�3���8�����+ä7ֆ��x=S���'��&���nR���KB�Ν��h,a?�(ݻw��t�I��G����      ��ؔ�X�v����o��������[?P��hPSSf��"���/>�[�n+�A4�ލ�
�
      ���uۚ��3��x[!Y "M"�g�Э[�q�����0z��0mڴ�`���f͚�nݺ�z��d��_L���ӧ�`Dee�ª���z      (�|�@���7�	D�e�]�a����w�ygX�|y�G���Q�B����#�/���o�a      ��""
M B �Tđ�u�%;�0hР��u�Q$F�Q7�/�z}�2      P$�&amp;!Q*�u�";�p�}���{����Ӹ��j�".��o�i      ""
D4g����{��3ۛ����!�_�vm��w�N<�Ĥ�~�d]sCu�^�#e�}<�Dzκ����e�hp�K�ۓ޾nݺ�"�Ν��&gt;��C     @3�S,��hX�@�׾���{�ᇇ/��aȐ!a�ƍ��_~y���'�ӦMKn��_���q��x�X,�.��uq[��9rdعsg�.��X4����x�\�_�s
6d���z(     ��C�Ik���������])�!��#�H�nժUULΞ2cҤI9M���ئ
�-��Z��˾��[���Rц��N9�d�K/��%������>*Z(Q�Ǻ�{�-�z������Y     @	�E������*++?H���_!�~Tغuk&�p�Yge����3Y׷o�zGY8����˖-k�5Ǝ������9,^�8i�5⺸����\���M���V
N8�p�熹s�f��a䯺��},	0T�)�:4���F
�1�G��Sd�og�!*<���[�3�rH�ir}9�g�"���4����]�շ��]�6	@���u��=Yג��1cƄN�:0=Hz�&lt;N:����{�K ��}/��-�}ѢEEDL�81��.�C     ������5�Hk�)3��D4����Њ��r ��}/�~E�~�ƍ+Z bĈ�����P      %D ��i�&amp;!Q��L B �X�^UU�o�A�[o��(a��{��+��"��޽{�
�V�
q:�Ν;'E����
:��B2�Fc�SN9%Y��K/�-[�49%A�o�o޼���̜93\t�E�)3>���	DH�"���/&���ɓ�2#N���G�˫V���u��x����eC��
qt
     @	�(_��8���äI��֭[3���:+����O�-[���Y��w�q@����t��1Y7cƌ0r��������O>���EE����J �駟�rH~x�����ŋ�}/���W�����3Y��.ĀN��i��"
>&�G�8���Ÿ��'��)�@D:ѥK�dT���S[�����u����8��UW]>���%#A�����D^ee��:#9�[o�5,Y�$� ���������
�(_�V���8m�g>�p�qDž��zK ��"��={����f5lȷ-�����Y�
     @#Q�""
L���      P!       �!       �D        eG        (;       @��        ʎ@       Pv"       ��#       �       �D        eG        (;       @��     �6�����ү_�m]�t�סC�x�_�4M��|;������=�:u���D     @�|��s�9�&amp;�6m
 Pb���3τΝ;���&gt;z�^�|	D     @ֻw�_|�� ekϞ=���DM������D     @v�駇��竖P�y�=�no���D     @ۦJ@ً�g���}�}�!   P`o��v�~��m�ҥ˾:ċ1��i��w�q�_�žN�:��+�* ���sș@   @-_����sN���„	�o5��ot>��3�s���裏^�whq�Z�j�;��"(2   ��ݻ�΋/�ؕK��={��O|�5���o�-*�B}l�{l���fΜ����"*������J8��3ÑG�����}�@ ��    (��O?=̟?ߕK��y�=���Z=D�:�B��q�۱�j�@D	�J�=|�_H��0ʺu�����} 
�7mٲe����rHN�R��-n�;wn�۷m�����},�i7n��o�N<�Ĥ���#Y�����@ �r!   PX�Z(f�L_SQ\pAf{Ϟ=�uO?�tx�嗓���/��h� ��׿�u&�P�~�=o�&gt;}��c�&amp;��<�L����
�CP."    
�CP."    
n_�ti8��3<F���SN9%�_�1�k_�Zx�7��}���~8~�5�7���r!   PX9_܋������/����/�i��q��%E��}����>~�…�}?��O7X�h�)3r�fj�m:�P�ȑ#���S�9F�u�7Yp�7c+�(����'��]��y�d9��z��,?�����_>`����r���0{���v,�57���Խo0��|0�����{{S�\�3(|_ �!hO"    
"�[��h�C��cE"[�&lt;d��lo��Zaxv3J�� ��    �����3gf
��?�|�nʔ)�uӦM�u��N:)Y?gΜp��w7YH?����U�Vt "�)32t��d{UUUf]���mQz:���GL'Q��P�5'O��,Ǒ'�ϸ��~�믿���
���������JOm�~��u�����KR��L}�b�q�+s����   �\�Z(f�k���+�̙3äI��s�=��@�8qb�:ujX�j��C@��	D�zF��/�����[z���usBCُ4步O�H/�~%��㹭��{�j�]������_+����}�o_]G�Ho��/[g4������   �\�Z(f�kڸ�K��)S��%K���۷�]�vi%��g�hѢ����E��W>���~޻�����rE�Q/V�ץv�o�j�T;���ó?���m���f�������	����7��'��'��g�H���}���/{+�7�m�h�}7����	   ��\�P��״qq��+W
!�h{��7��
�O�����1`��VwZ��3s����   ��Z(f�kڸ8=Cuu��A	�?#�9ԕO    ���j�L�l7g;��kJ!!xP�M �C@}"    
�U�f0g�9�Q�@_��k6n׍y-i�~C pAD    ����`�vs�������;w�
�~�Y~�͵�@D��^�n�y���9�H h���Z�dɲ�3g�3rii�\:eʔ��Ǐ��� p2�9-�ݕ����n�v3�הj "�!ziY�ؼ0~��a�k��O��	D��q��9��M����ٷ–�B�Z�@�k��k�ͱ0�ȥ%=r�&gt;ס���d�ɨ"�o�j
�6��`!�3#��Ϡ�'�$&	h���q2�dT����lW�B1}�@��?��0ġ��v�;�f�"&��"v�n�}����SF<1'����I� �ҁ�[~�R�������ۓ�%b�!N�G~��g�\1���^
�6�����K�gP���������ɨ�"U�	D��]
����p�uׅ�z(	F,X� �Y�&amp;�[�.�^�:Y~���&lt;������[oM
���xv^����Y���4���8=�;k�6��Ͻ�b�Seğq
r?3r��J��d�$'�����ɨ�@�@�@��������N1C_ӈ��ׇ�o�=\~��a̘1I�/���?�x�ٳg����T0��o ���^p��s�/a�?�G�C��H�ݎ;��C� Ýw��/_��s���5*t�޽�s���#̙3��9-��/<1{Y µA�]l���ȥ�3(�N�0IN@�:�D��@��
�w��`؈#j=oUUU?~�?�
�D&�����O NF��h^ʜ�
P�(.�K�(~6�ۦ��rK2�w���;��N2Tw�����m��^1C_Ӡ|0\{��Ix��T5w�uW�իW2rD[���fb���MC�Q��B�&lt;xp�0ĸq�
�6X����H�g��985�O��N�o�+����"���6mZrA|Ȑ!a���Ia�?�A��k��>n�={vY"�ٮ U��R[.M�&gt;=9�o�֝���ZŌ���L�&lt;9�Pa�lÇO���+m=��J-!�_?��?�r
Y�pa�ѣG�uG��p�밸6��`�ό\j?�����&gt;���d��p2�x�H����ׇ�o�=��ؘ1c��C>����d���o��M#�ٮ U��R[)łM}��8�C,�4���
��~f�R�Y)�ڵ�QUUUqT�镕�KS�7�����T������I���+�7?bĈ�&gt;|����w0`_�0�q9�6lؚ;S����a��J�$��ɸ��d��^�*S�NM����ͽ0M1/���o���]��ߴ-�Q�7��X7Ȑ�?bX�|y^��?jԨ� ��\��s��Q�hg���_=�+�&gt;V��~)/�?*�0�'?������h�qB�իW�����{[�����k��?����aqmе��ό\j?+ݻw��t��stК����#n����3x��m3�-�ܲ�gϞ_�	&���͜�;�#��:�+R5*�Ƃԫ��ڢ��d��w����R�R�R�j+a�REĀT,g��vРAy!���1bD�筪�
_|�s�-1mj�������|r�����0������:A�$98���p'��c��Q�{��z=�����k�M����]wݕ|��C
P
P�C�j�誫�����E�9���.��V(b֬Y)f�O�~Ĕ=?~h������o��������{����^������y�˃]���Cv�&gt;��T;��~[����g��xm��}C��b�W���@DC�U}��B��_(����?d����=���82S�},Y�D�A �!K�aqmPsm0���ȥ��bH�'�+Ĵ�������:�&lt;x`!�A�ի�C:A�$98���p'��c��Q�{��Z&O����*�m���Ia5~fZ����(��Q�������&lt;/��+W���r�Ӽ��3�Ō���e�����߈�{��z'<8�O����Y��������w��a�����o�z�p��w���7K1���&amp;����ݻ�λ�[���ݻw�&gt;}��HT��*��*אC��rE��y�x��]��Z,��<�&gt;~��_I?�P bУo/��0��u-~|{qk5�Y��L���o-�w�䚾wM�w����up�ϵ?�]tm����f?+��.�����1
2
��%Qa�h�2x�`��0��G��mW
�_��+��oЩ!5ȵJ�1�ׄ߿��t_E�������ߴG�#�}MY(T|*��.S�LI�30|uMiS�#��D<W�&amp;z�t�R���.�����Sh�T!Q��=��*/���ܢ�ھ�F�&gt;���7�Cp,���y�W��v��о>T� �����7�Ĕ�>;�ȳ,��s���\m��$�
��5�r>��l�i�3��i��3v�V,�O찀m�� ��s�X��pW2ӦJ���Wyag߾}�$1rq~~��ڵkW�$L�S���31���9,�ذa���LE�v�^�Z�� T��!\'Q,ΡҮK��H�1�ɩ7R�'	���3*��Q���f�7���k�̜`���"AS`4�BN����Ҿ�8.��|,ǀ���
Ƽ��n��7��Y=��栌��4�����_���kʹ����n��%>/������v��k��W��B�
w���%⹪lZ�H�Te��*�����n���G�� B������BD�(%�t�=Ʈ;P0tn�+`�xѱ��q��6��3��7��1�(M Y�gFk���:O���\Qg�"���n١��>��H���-\8b��,Z�'vX�6HAA�9K�����2m��tT������t*� 7l�P��t�������k,�_�`<��h������;�4^S��TD�pQx49�DP2YQ�s)֜�ў�,��"2x'�r�$�9s�&gt;��em��H �X֓X ���2�k�cp����Z�5��Ս���m˿w|��s�_�_~\������s�6�m�qVȁ~����}��ȹo߉;��Nߟ���T;]>\�3م6?�K�=/��܉�Pٱ��d�G�ж�W�ڵkg\�ƫ$#UYFh�{���~�� "\�.�TJ��?�J���(J!A���[k>T*�`������}f���}����7e��WU�&amp;�SF#��@BZw�O�"l���h�
2�]IEv[)���A��C�
?���A

�r�&gt;<��û���t�T��|�����7�ِ,�Q��"��r�W�yS��!V1D<�Z����۷�7iҤ���
}�!C�d� b�1C�й�ʽ�(e��5AD�֭S�tY�|yR���9��%���?��y��wg� ��E{�*�D��#ETD�mb�h�F���oݺ5e���I}?������A

��N;AD����v���z��2�7n\�Z���w�DAD��I��D
VI�HX��w"��Y�]1��@wL�Et� <m�m��K�e���!r�ΝO�	L'H�qr�+�J��p/1�����^� ;�AxT�q�!��uɖ�3P��(6��(��� ���=�QquRi�)�j�ѪQ}�d"Jsx�����C9Ͼ�D��
�%���#�D���\ˆʈ!*+�`b���=�Q�8E��s�&gt;|���	"��e��+:��������(����7�tS�+g��@�B�ԩS�=c�s���:N�O>�$n"^}�U眱cdžV:4��V�&gt;կ�K����S�:��M�xKy�e���?�Dth֬Y��E���m���k�N�ߞJ$�q�Ge�
���k�A�(�PN��FN�d��)�P;ݶmۈ�o�޽��F�F��9��˻��e�����Pʌ���	DdjĢtE�*r��|����'��q���lY����{�c�l���e[ݺu�t;,$�Y�8&�V��u��wg� B���J��k*�ej_���D��}�}�9u/����-Z���o�)�J�	"�}��~��tK��� ]� /^�X��ù�	Rh��y��R*W��i0~���E��j�mi�@1D<L����g0� "��h�T
��0��ƻ�;]J<ri�_�Wκ�������{ˉ��lذ!�)3$��*9�T�^�b�n���dJ�"Oh�W��������K�"D����Hz�dD��չ���ݟʶb߾}qY��3#5}M�&lt;��3N�T�t����*A�ޫ-w�W7E�+nk߾}�(
ZQ:U�+V��x��ߢJ��G3�Y�QAD��^0
|Z�M�Z[�.a��o߮���s��� ��
�W��i0^�AxV�"J�$��0��"^&FY��3EωS�N*�&gt;H�`�]qO�w�Rf��]���hD���O�_�~qDl۶���q����/+-�P�S��s?E�Ы����d"���]QQD$'Qx����"*�\���h*&��pޕi+pf�������߉>�
���+'���3�&amp;�P�
pm���g(�Q�6m̭�����7�S�n����]y�����bR�'�c�����?��D$O���b�J�1���9���ms�O���ϕ��C����ҥ?c�\��d����8c�D����~u���1I,�5o����G%��s��Xo���*v������pч�7H���,Opm�x�%���۠�8Eu����j�r�Jǎ��3���J�"�z��1mj�ڂ4
���J�B\�j���/�Ѳ�-���������8l�A�/��+[���[U�����u��^��E�̳�Sտ����-&���=�6v�-{�H�~�~7���=���C��"?���n7��mϭW�oa�9`���('F&���Q���FD�s���J�'9=R�G}�"M� �4�wY��J�!��Ϛ5��?��/JD�(��R��Y��ӥ������z/GW<}��q�۾/�O�O���n�V��f�ԉ<�Wo]G��8т����E�F\i2b	G1D�o�F�B祲������i+pf����	�R%B�)��v�t�5TI�\֩�5d�D���X/�:��3jԨP[��W"�D��n�6>�a�(��ի�5�k׮Z�^�j�w�n������m��&[����'�x��l��@�&gt;{���ؿ����\�G9���_������-���uշ�Fe����J�I���}m��F�}�}�h_�ʾ%{������>�����2Ⱦ"{�l���n��2��2�n���LvM���ݞ�o~d����a��
�:��}�6��e��Ǘ��/d���V��5A;���Ѿn�e�lz�|i��mԖ]��Ev�}Om�_�^jϓm�����cA��	���숶�	���t���=�}-�K����-R�r�D%0�찔�hn���;G./2b�#L*������fYœ�L������O�������b��X��w^_^J�h�&lt;[A"�f�V�Z�tjԨ�W٥+��f� �䳗�iS���Q�K��H�b�%���qQp����y;h���TP�pԾ�������$vX�q�/p��L�e�eX�)�ϖ�r�KlQ�s���qmH�Gw���!a�&amp;��jشi��5�ӤO>�������Fi�gK@��N�g5�N���J��]�IP���+@��fkRFh2�&lt;8	[�m4��RŠ��b�=v0(�8L�qR*����\�'F�D01ʒ���(��xN��uR��-Gc�Q��&MQ�û����ի���1i%kY�XW�긜�2\��s#�K��g[9�++�����;���ݧ��w�=����"��������g�^��˫�D;��BTDQ^N�Xs�WV�߫�����9sf���F�����kba��ɦ]�vN��d��:[m"*&�K�x/Wг�~�+�Kd;���ۮK��	��l����<vǢ����sm�=��d�&lt;�Q�	ګNmW'$�H hӒh�p�^y0(*��	��
µ}M)���W��Tv_R(�Jˑ\��QY‰ʀ"��{�FS9q��I!r4�2/��*���d��4�Q�"�h�O�sIc|od�d�ڏ4�x
R��6�6hJn"�z���]����xӦ��;;�?�N��C����_��ј���ŸkܰbŊr#0��x��j\������Q
��b���m���m�|�:�4Wy�cǎ9�ժU��j}o9�}�Q�cǎR��H%��'�x��
tս

标签: pythonpython-3.xpngcontent-type

解决方案


正如 Image.open() 方法的第一个参数的文档中所写:https ://pillow.readthedocs.io/en/stable/reference/Image.html

“文件对象必须实现 read()、seek() 和 tell() 方法,并以二进制模式打开。”

要遵循此要求,请尝试使用此代码:

img_link = 'https://some-image-link.com/image.png'

import requests
from PIL import Image
import io

response = requests.get(img_link)
in_memory_file = io.BytesIO(response.content)
im = Image.open(in_memory_file)
im.show()

推荐阅读