Python 如何创建自定义网页?
我是网页设计新手。我想创建一个在后台运行python脚本的网页。基于请求页面的客户端IP地址的脚本将生成一些URL,这些URL必须嵌入到网页中。最好的方法是什么?Python 如何创建自定义网页?,python,Python,我是网页设计新手。我想创建一个在后台运行python脚本的网页。基于请求页面的客户端IP地址的脚本将生成一些URL,这些URL必须嵌入到网页中。最好的方法是什么? 另外,如何找到客户端的IP地址?您想看看Web服务器网关接口。Python脚本通常使用它与Web服务器通信。为了运行python Web应用程序,您需要这个 除此之外,您可能需要使用Django或Flask之类的框架。Python有许多WSGI框架,您可以选择最适合您需要的框架 至于问题的IP部分,这取决于您使用的框架。我建议您从阅读
另外,如何找到客户端的IP地址?您想看看Web服务器网关接口。Python脚本通常使用它与Web服务器通信。为了运行python Web应用程序,您需要这个 除此之外,您可能需要使用Django或Flask之类的框架。Python有许多WSGI框架,您可以选择最适合您需要的框架
至于问题的IP部分,这取决于您使用的框架。我建议您从阅读WSGI开始,然后开始阅读WSGI框架。您想看一下Web服务器网关接口。Python脚本通常使用它与Web服务器通信。为了运行python Web应用程序,您需要这个 除此之外,您可能需要使用Django或Flask之类的框架。Python有许多WSGI框架,您可以选择最适合您需要的框架
至于问题的IP部分,这取决于您使用的框架。我建议您先阅读WSGI,然后再开始阅读WSGI框架。这里是一个基本的HttpServer:
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
class MyHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write('Hello %s!' % self.client_address[0])
return
def main():
try:
server = HTTPServer(('', 80), MyHandler)
print 'started http server'
server.serve_forever()
except KeyboardInterrupt:
print '^C received, shutting down server'
server.socket.close()
if __name__ == '__main__':
main()
您只需在浏览器中键入即可访问此服务器。它将打印客户端IP地址。
还可以在此处查看python可用的web框架列表:这里是一个基本的HttpServer:
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
class MyHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write('Hello %s!' % self.client_address[0])
return
def main():
try:
server = HTTPServer(('', 80), MyHandler)
print 'started http server'
server.serve_forever()
except KeyboardInterrupt:
print '^C received, shutting down server'
server.socket.close()
if __name__ == '__main__':
main()
您只需在浏览器中键入即可访问此服务器。它将打印客户端IP地址。
这里还可以查看python可用的web框架列表:我之所以提到这一点,是因为你说你对web设计还不熟悉,这至少可以让你在开始玩游戏时不需要太多学习:使用Flask而不是Werkzeug direct可能更好。@GrahamDumpleton你可能是对的,我将把它添加到我的答案中。我之所以提到这一点,是因为你说你是网页设计新手,这至少可以让你在开始玩游戏时不需要太多的学习:也许最好使用Flask而不是Werkzeug direct。@GrahamDumpleton你可能是对的,将它添加到我的答案中。