首页 文章

二进制数据返回一个空字符串

提问于
浏览
0

我想要实现的是从一个通过PHP脚本(动态)生成图像的URL获取(图像的)二进制数据,并使用sqlalchemy将该数据保存到数据库中 . 当我尝试使用python或ipython解释器实现这一点时,返回数据,但在脚本中使用相同的代码,数据是一个空字符串 .

使用口译员:

>>>import urllib
>>>link = 'http://www.example.com/getImage.php?e=23f4904fhsdajf0xns3erre32q886heipxd8c447gf8gs9b9d'
>>>image = urllib.urlopen(link).read()
>>>image

返回以下二进制数据:

'\ xff \ xd8 \ xff \ xe0 \ x00 \ x10JFIF \ x00 \ x01 \ x01 \ x01 \ x00H \ x00H \ x00 \ x00 \ xff \ xe1 \ x00 \ x18Exif \ x00 \ x00II * \ x00 \ x08 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ xff \ xe1 \ x03)http://ns.adobe.com/xap/1.0/\x00 \ xff \ xdb \ x00C \ X00 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X01 \ X02 \ X02 \ X01 \ X01 \ X02 \ X01 \ X01 \ X01 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X01 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ X02 \ XFF \ XC0 \ X00 \ X0B \ X08 \ X00 \ X16 \ X01,\ X01 \ X01 \ X11 \ X00 \ XFF \ XC4 \ X00 \ X1B \ X00 \ X01 \ X00 \ X03 \ X01 \ X01 \ X01 \ X01 \ X00 \ X00 \ X00 \ X00 \ X00 \ X00 \ X00 \ X00 \ X00 \ X00 \ X06 \ X07 \ X08 \ X05 \ t \ n \ X03 \ XFF \ XC4 \ X00 $ \ X10 \ X00 \ X02 \ X02 \ X03 \ X01 \ X01 \ X01 \ X00 \ X02 \ X02 \ X03 \ X00 \ X00 \ X00 \ X00 \ X00 \ X05 \ X06 \ X04 \ X07 \ X02 \ X03 \ X08 \ X00 \ X01 \吨\ n \ X14 \ X12 \ X17 \ X13 \ X15 \ X16 \ XFF \ XDA \ X00 \ X08 \ X01 \ X01 \ X00 \ X00?\ X00 \ xfb的\ XF8 \ XF3 \ XCF <\ XF7 $ \ xf9 \ xf0J \ XA0 \ x8d44 \ X1A \ X12 \ XB6 \ XB2 \ XB6 $ \ X89 \ XF6&#\ xe4a \的x87 \ X04 \ X04 \ x10x {\ X88 \ x974h \ xb9 \ X1D \ XDA \ XE3 \ x8b \ X13 \ X14 | Y \ X1B \ XE4 \ xc9 \ XDF \ XB3 ^ \ x9d \ x1atg \ xb7nx \ XE1 \ x8eY | \ XFC \ XD6 \ xd9 \ X17 \ X97 @ 7 \ xa8 \ X1F \ n \ XD6 \ XA4 \ XD6 \ x14S“\ xbbB \ xd9X 'WY \ x17N \ XC 1 \ xd0P!\ XF0 \ X06 \ XC5 \ XEF \ XDB \ X18 \ xc0Y \ X83%F \ X91 \ x16T} \ xbb4H \ XD1 \ '^ \固定的; 3 \ XD7 \ x9e9} \ xedz \ X16 \ xc3d \ xd7j ' \ XC0 * \ XB5 \ XBF%\ xac45 \ XC4 \ x92A]米\ X85 \ XA4 \ x18S \ XEC \ X90!6!\ xa1L \ x9a \ X009)\ XFA \ XA4 \ X18 \ X89版权所有\ xA9 \ XEA \ XD4 \ XAC \ X02 \固定的\ XDB \ X1F ^ \ xcc5 \ X96 \ XB1 \ XC0 \ x8e \ XCB / \ X93 \ X0C \ X0F \ XD3" 的i \ XEC \ XFE \ XB7 \ XD6 \ XB0 \ xe5g \ XCE \ XA4 \ X94:\ x9f \ XDA \ xaeq \ x9b \ x88 \ xc6%Q- \ xdc \ xb5 \ xd1 \ xcb <| \ x81 \ x18 \ xe5 \ x99m \ x13 \ x90E \ xb1 \ xed \ x13t \ 0 \ xcf \ xec \ x8cvD \ xc7- \ x1f1 \ xfb \ xf7o \ XCC〜| \ XFB \固定的\ X01 \ XE7 \ XA3 \固定的\ x8d \ x8a \ xa8J \ XAC \ xcfOL \ XCB \ xe9i)K \ XE6 [\ X1C \ [\ X0C \ x8e \ USU \ X1D $ \ XC3 \ x0b33 \ t \ X89:乙\ X01 \ X80" \ X1C \ xc9Sf \ XCA \ XDD \ xaa4X \ xd1vo \ XDF \ XB3 \ RXE \ X97 \ XC2 \ xcbb \ XAB \ XA0 \ xe9&\ X13 \ X99 \ X97 \ XDB \ x04ClS \ x98Qd \ xc8 \ XE3 \ XC3 \ XA2 \ XB5 5 \ x19EzY \ x938 \\ x9d \ XBA \ xb40 \ x05v \ A \ x0cZ \ x16Y |!\ x928 \ xa8)\ XA3 \ xe6k \ XD3 .. \ xfd8H <\ XF3 \ XCF <\ XF3 \ XCF <\ XF3 \ XCF <\ XF3 \ XCF <\ XF3 \ XCF <\ XF3 \ xdf7 [\ XA2 \ XF4 \ XE1 \ XFE \ XE6 ^ \ x85 \ x96 \ xdf \ xd0 $ \ x94; \ x0b \ xb0 \ xba \ xc6 \ x9a \ xbc6m \ xdb \ xcdJ \ xa09 \ xe1 \ xb2 \ x89 \ xe9 \ xd5Z> \ xc3Ka \ x0e \ x00 = 5U \ xa0ej \ X8F \ X A0 \ XCB版权所有\ xA9 \ x92G \ x10U \ xa9gIq \ XBB] _ \ XA1 \ X92 \ XD0 \ XCD \ xaag \ X01 \ X97 / \ XD3 \ XD7 \ XDE} \ xf93 \ X97 \ XBD \ xeac \ X81 \ XAE \ X1A \ X0F \ X94 \ XEF!\ xf0kn \ X91 \ xb1K \ XCD \ xa69 \ XD2 \ xa5 \ XB5 \的x87] \ xbdOWQ \ xf1s \ XA0 \ XD8,X \ XD8 \ X1D \ X90 \ XE4 \ X07 \ x1cL \ xb3Be#[!\ x863 \ NI \ XA1 \ x18l \ X156 \ xa5n \西航2 B \ XE6 \ XD2 / 2 \ X03 [\ XDD \ XF0 \ XEB \ XF1 \ X1F \ x8a \ XBF] \ X-AD〜w ^ $ \ X99 ^ \ XF6 \ X174 \ X1E \的\ XA1 \ XC4 \ XFC \ XFD \ X93 \ xc6IGP,正\ X8F \ XB1 \ XAC \ XBB \ X10 \ XEC \ XAB \ X14 \ x7fE \ x10K \ x11j \ x9f \ XDA \ XDC \ xc8 <\ X93 \ x18L \ X16 \ xb3S \ XD7 \ XBA \ X1C \ xedQ \ XD3 \ XAE?\ xa00 \ XFA“\ XF0 \ xae9 \ XDC \ x1fM \ xc8 {\ X99 \ xd9 \ XB6 \ X85 \ xa1D1MV \ XB4 $ \ XF3&\ x8a \ x97w \ xe0 \ X13 \ xaaUL \ XB6〜\ XC2 \ x9f \ X0F \ xeaTj \ xdbg \ xe9 \ X12 \ XF6 \ xb9RVfL \ xf9 \ x0e3 \ xbe1 \ r \ X92 \ X1F \ X1C \ X91 \ X80 \ xf3H \ XE3 \ X01 \的Xaa = \ XB7 \ xf2XB \ XF2:C \ XF4 \ X18 \ xb5A \的x87 \ XC5 \ xe9W \ x8a \ X98 ^ \ X18 \ xfde \ XAE \ XBC \ xf32 \ X19 \固定的\ X81 \ X80 \ XB3 \ XB4?\ XFE \ x8b <]#\ x03G \ x9b \ x16v版权所有\ xA9 \ xf3y \ xb0N \ xe5-d \ xc8 \ X02 \ XDE \ XC1 \ X99 \ X15 |%G \ xf9 \ xe8 \ x8d \ xc7 \ n \ XCC \ XB7 \ XFF \ X00 \ X14 \ XBAR \ X90;苏\ 0x7F部分\ XFB \ XAE \ XCF \ xe1n \ XFF \ X00 \ X98 \ X84 \ x8c \ xc5 . \ xfb \ xb3m \ x03 [R3q \ tT \ xa9 \ x96 \ xb2 \ xe5 \ xa6 \ x85g&y \ xaa] q \ xb5Q- \ xda4w \ xf6e \ x89s \ x01 \ XB4 \ X0B> HC \ x9f \ XDF \ XB8 \的Xaa \ XCD \ xfb的\ XDE \ xc8 \ X17!\ XBF \命苦\ XBE?\ XBB \ XF4 = A \ XB7 \ xbbf \ xa5 \ n \ X1E \ xe17 \ XDB \ XB7 \ xe5y!J7)\ xf5Z \ XDF \ X19 \ XB7 \ x1aj〜\ X1B \ xa6 \ x9a \ x81V \ XCF \ xe8e \ XCEB“4 \ xa8 \ XB8 \ X0C \ x8dP!\ xb0F \ xddgX \ X98 \ X92 \ XFA \ XDF \ X89 \ r \ X83 \ x91g%\ xfeq \ xb0Y \ xf9 \ XD2 / \ XEA \ x9c \ XD0 \ xea7 \ XDF \ XE6 [\ xb3dn \ X88 \ X1B \ xd3L \ x16的版权所有\ xA9 \ X15 \ XF4 \ XEE \ XC 1 \ xa8 \ X99 \ XBB,UB \ x9bi @ \ xddh \ XB7 \ X0F \ XDD \ XCF \ XC 1 \ X98 \ XB5 \ XBB \ X84 \ X0B \ xa2z \ X11 \ xe8 \ x93w \ x07B \ X1F / \ X19,q $ \ XE1 \ x0e \ x8d \ xa9z \ n \ XFC \ X1B \ xc96 \ X85 \ x97T \ XF6 \ xb9 \ X91版权所有\ xA9] \ X03 \ xdfoly \ XC0 [\ XEA \ X11 \ XB6 \ xeae \ xbb \ xf9&~i \ xd9 \ x95pi \ x83 \ x8cu \ xb5i \ xc2 / \ x11 \ xd7m \ xec \ x08 \ xa0 \ xe2c \ xb6 ^ \ x85 \ xda \ x929 \ xe4 \ xb8 \ x7f3U \ x178u \ xc8 \ XFE \ XEF \ XD4 [T \ XFB \ X81%版权所有\ xA9 \ XD2 \ XFB \ xddY \ XF0 \ X11 @ <\ xe9e3 \ x88m {“\ xc5eQ \ xfd3 \ XD7 \ X15 \ XAD \ xebu \ XD8 \ xb9 \ XCC \ x1aOi \ X06 \ xdb2 \ XB7 \ XFC \ XA7 \ X95] 4 \ XFF \ X00 \ xf9H5 \ X00 \ XAD \ x8e \ XCD \ xb8fq%\固定的\ XCF \ xfeJ \ XC6 \ XC4 \ XE6 . \ x8d \ xe8 \ x1dCQi \ XFA \ XBC \ X81 \ n \ XD4 \ xd3gJ \ XE3 \ xcaV \ xfdW \ xd74 \ XC4 \ x0eG \ xadBnkZ \ X1F \ xf9 \ XFD \ xd1t \ XAD \ X02 \ xa9sc \ XF0 \ X1A \ xadMD \ x912l \ xcf \ xd0 * \ x1fZ \ x8cZA \ x07 \ xee \ xca)s4 \ xb1 \ x8b \ xd3 / \ xf6 \ xa c \ x1e \ xff \ x00 \ xe5 \ xc1nn \ xbd \ x8f \ x06 \ xcas \ xfd6 \ xed \ xf4k0 \\ xb6K \ xc27 \ x16 \ xb6 \ xf3:\ xef w \ xcb7(\ xa5 \ xc2 \ xdb7 \ x1a \ xd8 \ xf9H)\ tT \ xf1 \ x12p \ x17 \ xf1 \ xdcj \ x9a \ xa9 \ xc9n \ xda \ xb5 \ x98 \ x82 \ x0b = T} \ x01N \ xf7 \ x02 \ xdaG5; \ x1ep \ XFD \ X19" \ XFA \ X1F \ x9e \ XFF \ X00 \ X8F%\ X88 \ xe0 \ X1E \ XC0 \ xb6z \ X99 \ x8a \ X0C \ XBB \ XB6 \ XEF \ XEB \ xc6J \ XD3 \ XF4 \ xe0E \ x80 \ x96 \ xd4 {tS \ x1b \ x03s \ x15 \ xad \ xcf eb \ xed \ x82 \ x95 \ x12fm \ xe4 \ x87 \ n /?y \ xcd \ xf5 \ xbc \ x03] \ xe3 \ x0e \ xbb \ xe8 \ XCC \ XD3 \ X85〜\ X8F \ x8cg \ XB3?&\ XFF \ x00H2 \ XDC \ XB8 \ XEF \ XA7 \命苦,\的x87 \ XE4 \ XEE \ xe8 \ X10 \ X1E \ xa6 \ XE7\ XE1,吴\ x91Jñ\西飞\ X06 \ XCF \ XBB! “/ \ xc8 \ xa5 \ X15 \ XD5 \ X12 \ XA7 \ X92 \ X81 \的Xaa \ X1A \ xe9 \ x06I9 \ X-AD | \ X89 \ xb9” CN * S \ xe8 \ x8a \ XCC \ x8aG ^ '\ XA2 \ x0e \ xfdC \ XEE \ xabK \ xabr \ xa4k \ XCE \ x87X \ XB6 \ x8a \ XF2] \ xd9 \ XDD \ x9f \ xa6 \ XEC \ xd5Izy \ x9a \ XA1 \ X0B \ XA1 \ XB1 \ x9b \ X026 \ x9e} 6wE {“C> \ x8a \ xe9 \ XDA!\ XCF \ x9a \ XF5 \ x83e \ X19 \ 0x7F部分%\ x9b \ XFF \ x00m \ XFD \ xc5_ \ X96 \ XF6?\ XAF \ x18s \ xa6 <\ XC5 / \ X1E ^ \ XFF \ x00Y \固定的\ xe9 \ XCD \ XDD \ X17 \ x9d \ xe9 \ x8d \ XE3 {\ xe2koH \ XE7 \ xccZp9 \ x8b \ x0et \ xc7 \ xced \ xcd \ x13 \ x0b \ x8b \ x1f \ xfal \ xec7 \ x85 \ x89 \ x96m \ xd8 \ x9c \ xcf \ xed} W \ xd1 \ xbd \ xd5f \ xd9uT \ x9e \ xa3t \固定的\ X95 \ XE6 \ 86 \ XFE \ xc9 \ xa8 \的Xaa \ XBE \ 86 \ x8dS \ XDD \ x9d \ TZS \ xe3i \ xcd_ \ x82u \ XD5 \ x93l \ x1cE \ XC2 \ xaeg \ X1E \ R: \ XBB \ X91 \ xfaJ \ XA3 \ xb4v- \ XC0〜\ XC3 \ XD7版权所有\ xA9 \ xbeQ%\ XC 1 \ XC5 \ xa3O8b \ X11 \ x0fh \ XB8 $ \ X85 \ XB4 [\ X85 \ XF8 \ XB8 \ X-AD \ XFB \ XAD \ xcbM \ xecO \ x93y \ XD0 \ X85 \ XD5 \ xa6 \ XC5 \ x1aH5 \ X83 \的Xaa \ XDA \ x9bO \ xa7I \ XB1 \ XF5 \ XBD \ x873 \ x17D \ xc1NX \ XB8 \ xec3 \ XF0 \ xa4izt \ xc9 \ XD1; \ XE6 \ XFD [\ xf5k \ XDB \ x86X | \ XD6> Y \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9e \ xaa \ xeazV \ xb8 \ xa4E \ xb4 \ x89 \ xaeB \ x91 \ x19 \ xa9 \ xe1 \ xe9 \ x8e \ xcbq u \ xb1 \ x C1 \ xe9 \ x8d \ XA1 \ XE1 \ XAB(\ X98 \ x17m \ XCB \ X0F \ x99g \ XF3 / \ XBF>} \ xf4yw \ x8ay \ xa5V \ XFB \ x9f \ XD3 \ X00 \ XEB \ xe9 \ xf1m \ xd9 \ XC4 \ XDA \ X0F \ XEA \ x9f “\ XC2 \ XB3 \ X89#\ x82ky \ X13 \ X14 \ X0B \ XD3 \ xcau:Q \ xcfrj- \ x84t,L” \ x9ba \ X0C \ X02 \ X01 \ XB2 \ xfa7o \ xd6F | \ x9ceI \ xf9 \ xb7Ty \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XE7 \ x9ey \ XEF \ XFF \ xd9'

现在在脚本中使用相同的代码,如下所示:

def get_image(link):
    print link #Debug: Check if link has been passed
    image = urllib.urlopen(link).read()
    print type(image), image
    return image

第一个print语句返回:

http://www.example.com/getImage.php?e=23f4904fhsdajf0xns3erre32q886heipxd8c447gf8gs9b9d

第二个:

类型,

为什么相同的代码会产生不同的结果?任何人都可以在这里想到可能的原因吗?

1 回答

相关问题