首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python cgi将图像打印到html

Python cgi将图像打印到html
EN

Stack Overflow用户
提问于 2016-11-06 15:03:39
回答 1查看 4.1K关注 0票数 0

如何将png图像打印到html?

我有:

代码语言:javascript
复制
print("Content-Type: image/png\n")
print(open('image.png', 'rb').read())

上面印着:

代码语言:javascript
复制
Content-Type: image/png
b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x0 ...

的回答对我没有帮助。我有这个:

代码语言:javascript
复制
Content-Type: image/png �PNG  IHDR�X��%sBIT|d�  pHYsaa�?�i IDAT...

HTTP服务器:

代码语言:javascript
复制
from http.server import HTTPServer, CGIHTTPRequestHandler
server_address = ("", 8000)
httpd = HTTPServer(server_address, CGIHTTPRequestHandler)
httpd.serve_forever()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-06 16:33:07

编辑:扩展的使用不同语言的CGI脚本的简单CGI服务器源代码。

我有结构:(所有代码都在末尾)

代码语言:javascript
复制
project
├── cgi-bin
│   └── image.py
├── image.png
├── index.html
└── server.py

我运行./server.py (或python3 server.py)

CGI服务器不需要额外的代码就可以提供图像。你可以试试

代码语言:javascript
复制
http://localhost:8000/image.png

或在HTML中添加标记(即。在index.html中)

代码语言:javascript
复制
< img src="/image.png" > 

然后跑

代码语言:javascript
复制
http://localhost:8000/index.html

如果您需要动态创建图像,那么使用脚本ie创建文件夹cgi-binimage.py

(在Linux上,您必须设置执行属性chmod +x image.py)

然后您可以直接运行这个脚本。

代码语言:javascript
复制
http://localhost:8000/cgi-bin/image.py

或在HTML中

代码语言:javascript
复制
< img src="/cgi-bin/image.py" >

server.py

代码语言:javascript
复制
#!/usr/bin/env python3

from http.server import HTTPServer, CGIHTTPRequestHandler

server_address = ("", 8000)

httpd = HTTPServer(server_address, CGIHTTPRequestHandler)
httpd.serve_forever()

cgi-bin/image.py

代码语言:javascript
复制
#!/usr/bin/env python3

import sys
import os

src =  "image.png"
length = os.stat(src).st_size

sys.stdout.write("Content-Type: image/png\n")
sys.stdout.write("Content-Length: " + str(length) + "\n")
sys.stdout.write("\n")
sys.stdout.flush()
sys.stdout.buffer.write(open(src, "rb").read())

index.html

代码语言:javascript
复制
<!DOCTYPE html>

<html>

<head>
    <meta charset="utf-8"/>
    <title>Index</title>
</head>

<body>
    <h1>image.png</h1>
    <img src="/image.png">
    
    <h1>cgi-bin/image.py</h1>
    <img src="/cgi-bin/image.py">    
</body>

</html>

image.png

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40450791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档