精华内容
下载资源
问答
  • Web服务器 python

    2020-03-05 18:23:05
    前些日子,计算机网络写socket,老师发了个Java的教程,感觉过程是明了,但是代码感觉有点冗杂了,加上学了点python的爬虫,感觉用python还真是挺简洁的,便用python搭个web服务器,整体的思路都是一样的,就是在读...

    计算机网络写socket,老师发了个Java的教程,感觉过程是明了,但是代码感觉有点冗杂了,加上学了点python的爬虫,感觉用python还真是挺简洁的,便用python搭个web服务器,整体的思路都是一样的,就是在读入文件的时候恶心了一点,python的编码问题还是有点无语,最终估摸着用二进制读的文件,好歹弄完了,话不多说,奉上代码,还希望多多指教。

    import http.server as hs
    import sys, os
    
    class RequestHandler(hs.BaseHTTPRequestHandler):
        Error_Page = """<HTML>
            <HEAD><TITLE>Not Found</TITLE><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/></HEAD>
            <BODY><h1>Not Found</h1></BODY></HTML>
            """
    
        def send_content(self, page, status=200, Type="text/html"):
            self.send_response(status)
            self.send_header("Content-type", Type)
            self.send_header("Content-Length", str(len(page)))
            self.end_headers()
            self.wfile.write(bytes(page))
    
        def do_GET(self):
            try:
                fileName = os.getcwd() + self.path
                print(fileName)
                ftype=content_type(fileName)
                with open(fileName,'rb') as file:
                    content = file.read()
                    file.close()
                self.send_content(content, 200,ftype)
            except Exception:
                content = self.Error_Page.encode(encoding="utf-8")
                self.send_content(content, 404)
    
    def content_type(fileName):
        if fileName.endswith('.html') | fileName.endswith('.htm'):
            return "text/html"
        if fileName.endswith('.jpg'):
            return "image/jpg"
        if fileName.endswith('.txt'):
            return "text/plain"
        return "application/octet-stream"
    
    if __name__ == '__main__':
        httpAddress = ('127.0.0.1', 6789)
        httpd = hs.HTTPServer(httpAddress, RequestHandler)
        httpd.serve_forever()

     

    展开全文
  • ##一个命令建立一个简单web服务器python -m SimpleHTTPServer port例如:python -m SimpleHTTPServer 8090启动成功Serving HTTP on 0.0.0.0 port 8090 ...127.0.0.1 - - [18/Apr/2016 16:59:02] "GET / ...

    ##一个命令建立一个简单web服务器

    python -m SimpleHTTPServer port

    例如:python -m SimpleHTTPServer 8090

    启动成功

    Serving HTTP on 0.0.0.0 port 8090 ...

    127.0.0.1 - - [18/Apr/2016 16:59:02] "GET / HTTP/1.1" 200 -

    ##访问地址http://localhost:8090

    如果有index.html会直接显示该页面。

    0818b9ca8b590ca3270a3433284dd417.png

    ##建立web服务器四步走

    ###1. 切换目录到你的页面目录所在

    ###2. 使用API建立SimpleWebServer.py

    #/usr/bin/python

    import sys

    import BaseHTTPServer

    from SimpleHTTPServer import SimpleHTTPRequestHandler

    HandlerClass = SimpleHTTPRequestHandler

    ServerClass = BaseHTTPServer.HTTPServer

    Protocol = "HTTP/1.0"

    if sys.argv[1:]:

    port = int(sys.argv[1])

    else:

    port = 8000

    server_address = ('127.0.0.1', port)

    HandlerClass.protocol_version = Protocol

    httpd = ServerClass(server_address, HandlerClass)

    sa = httpd.socket.getsockname()

    print "Serving HTTP on", sa[0], "port", sa[1], "..."

    httpd.serve_forever()

    ###3. 启动服务

    python -m SimpleWebServer.py

    ###4. 访问地址

    http://localhost:8090

    这样一个简单的网页展示的web服务器就建立完毕

    展开全文
  • python3实现微型的web服务器发布时间:2020-09-01 04:02:16来源:脚本之家阅读:105作者:五力实验目的:用socket模拟一个微型的web服务器,当py脚本run起后,实微型web server架起了,然后用本地浏览器访问...

    python3实现微型的web服务器

    发布时间:2020-09-01 04:02:16

    来源:脚本之家

    阅读:105

    作者:五力

    实验目的:用socket 模拟一个微型的web服务器,当py脚本run起后,实微型web server架起了,然后用本地浏览器访问127.0.0.1:8080(web server的ip_port)时web服务器就会将网页内容传给浏览器,实现网页浏览.

    sw+sys: python3.7.2 + windows10 64bit

    本地准备的server端网页为下载的hao123主页(我已上载并上传,点击这里)

    通过这个实验让我学到了:

    1. 当get请求一个主页时,要完整的显示一个页面(包括文本、图片、css绚染等)是要get多次请求的。

    2. respone回复本地页网,open(filepath, rwa)时要特别的注意

    import socket

    import os

    curfilepath = os.path.split(os.path.realpath(__file__))[0].replace("\\" , "/")

    print(f'curfilepath: {curfilepath}')

    def new_socket_server(new_socket, new_addr):

    if new_addr[0] != '':

    print(f'当前客户端{new_addr}已连接上server端. ')

    # 3.接收信息

    file_name = ''

    request_data = new_socket.recv(1024).decode('utf-8')

    if request_data != '':

    print(f'有收到新的信息,信息如下:\n{request_data}')

    file_name = request_data.splitlines()[0].split(' ')[1]

    print(f'file_name: {file_name}')

    if file_name == '/':

    file_name = '/index.html'

    print(f'file_name: {file_name}')

    with open(curfilepath + '/test.txt', 'a+') as f:

    f.write(file_name + '\n')

    # 4.回复信息

    try:

    f = open(curfilepath + '/htmltest' + file_name, 'rb')

    except:

    response = 'HTTP/1.1 404 NOT FOUND\r\n'

    response += '\r\n'

    response += '----------file not found-------'

    new_socket.send(response.encode('utf-8'))

    else:

    html_content = f.read()

    f.close()

    response = 'HTTP/1.1 200 OK\r\n' + '\r\n'

    new_socket.send(response.encode('utf-8'))

    new_socket.send(html_content)

    def main():

    # 1.创建socket

    tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    # 2.连接server

    server_ip_port = ('127.0.0.1', 8080)

    tcp_server_socket.bind(server_ip_port)

    tcp_server_socket.listen(128)

    while True:

    print('正在等待client端连接... ...')

    new_socket, new_addr = tcp_server_socket.accept()

    new_socket_server(new_socket, new_addr)

    new_socket.close()

    if __name__ == '__main__':

    main()

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。

    展开全文
  • 1在当前目录下运行WEB服务器 python -m http.server 8888 2在指定目录下运行web服务器 python -m http.server 20083 --directory e:/pythonWeb

    1在当前目录下运行WEB服务器

     python -m http.server 8888 

    2 在指定目录下运行web服务器

    python -m http.server 20083 --directory e:/pythonWeb

     

     

    展开全文
  • 在本章中,我们来看看如何使用纯Python语言创建Web服务器。1. GunicornGunicorn是一个独立的Web服务器,具有中央主进程,进程负责管理不同类型的启动的工作进程。这些工作进程直接处理并处理请求。所有这些都可以...
  • python自带的web服务器

    2018-02-19 23:31:00
    python自带的web服务器 python自带的包可以建立简单的web服务器 BaseHTTPServer 提供基本的web服务和处理类 SimpleHTTPServer 包含执行get请求的SimpleHTTPRequestHandler类 CGIHTTPServer 包含处理POST请求...
  • python中的web服务器

    千次阅读 2019-04-22 20:07:08
    1、web服务器 python自带包建立简单服务器 BaseHTTPServer:提供基本web服务和处理类 SimpleHTTPServer:包含执行GET请求的SimpleHTTPRequdstHandler类 CGIHTTPServer:包含处理POST请求和执行的...
  • 准备也学学Python,GUI的库太大了,学起来周期太长,先搞搞Web,入了门再说。先搭建Python + Apache + mod_python环境:1、说起服务器,当然少不了Apache,不用安装这么麻烦,下载个XAMPP就好了,注意里面的Apache...
  • ##一个命令建立一个简单web服务器python -m SimpleHTTPServer port例如:python -m SimpleHTTPServer 8090启动成功Serving HTTP on 0.0.0.0 port 8090 ...127.0.0.1 - - [18/Apr/2016 16:59:02] "GET / ...
  • 之前用 Django 做过一个小的站点,感觉Django太过笨重,于是就准备换一个比较轻量级的 Web 框架来玩玩。Web.py 作者已经挂掉,项目好久没有更新,所以不准备用它。而 Flask 也是一个成熟的轻量级 Web 框架,在 ...
  • 所遇到的困难:1. python3.6的安装,需要把之前的全... 配置变量 path环境变量中存在两个python版本,环境变量:Path中添加C:\Users\宋\AppData\Local\Programs\Python\Python36-32然后 pip 配置:Path在、环境添加...
  • 上一篇讲了《Python入门》Windows 7下Python Web开发环境搭建笔记,接下来讲一下Python语言Web服务的具体实现:第一个Python Web程序——简单的Web服务器。 与其它Web后端语言不同,Python语言需要自己编写Web服务器...
  • 这是一篇写在正式引入web框架之前的总结,也是对前面的一个总结,认识会深刻一点,看起来会更加容易理解。所以有的变化都是人的需求在不断发生变化,为了追求卓越。(括号中的ver-**指的是服务器版本,自己理解的,...
  • 基于python实现简单web服务器做web开发的你,真的熟悉web服务器处理机制吗? 分析请求数据 下面是一段原始的请求数据: b'GET / HTTP/1.1\r\nHost: 127.0.0.1:8000\r\nConnectio ...Python实现简单Web服务器实验楼教程...
  • jinja2:flask默认的模板引擎编辑器:推荐pycharm一个最简单的web服务器python给我们提供了一个接口:WSGI:Web Server Gateway Interface 它只要求Web开发者实现一个函数,就可以响应HTTP请求。而不用触到TCP连接、
  • 一个简单的web服务器(python)
  • 静态Web服务器可以发出请求的浏览器提供静态文档的...搭建Python自带静态Web服务器如何搭建Python自带的静态Web服务器(windows可以实现资源共享的目的)语法:python -m http.server 端口号1.win+R 输入cmd进入命令指...
  • 测试环境:系统: CentOS 7.1Mem: 8GCPU: 虚拟机16核Python版本: python3.6Flask版本: 0.12.2Golang版本: 1.6.31.首先写一个Flask的web程序,只返回一个 Hello word!from flask import Flask, render_templateapp...
  • 网络服务器 简单的Python Web服务器
  • python -m SimpleHTTPServer 8080 #不指定端口默认为8000执行上面的命令,就会启动web服务器了,可以下载用户启动路径的文件。一个网友根据SimpleHTTPServer源码写了一个支持上传功能的版本。我贴到附件。保持后台...
  • 该项目是一个类 Flask 的 Python ...Sanic 详细介绍Sanic 是一个基于 Python 3.5+ 的 Web 服务器,与 Flask 有点类似,特点是速度非常快。速度对比所有测试都在运行 ubuntu 的 AWS 介质实例上运行,使用1个进程。 每...
  • python高级之web服务器

    2021-01-05 05:37:32
    web服务器
  • Python搭建web服务器

    千次阅读 2020-05-15 11:35:23
    利用Python自带的包可以建立简单的web服务器。在DOS里cd到准备做服务器根目录的路径下,输入命令: python -mWeb服务器模块[端口号,默认8000] 例如: python -m SimpleHTTPServer 8080 在命令的开头加一个nohup...
  • Python 搭建Web站点之Web服务器与Web框架 中我们弄清楚了Web 服务器、Web 应用程序、Web框架的概念。对于 Python 来说,越来越多的 Web 框架面世,在给我们更多选择机会的同时,也限制了我们对于 Web Server 的...
  • 主要介绍了Python 搭建Web站点系列文章的第一篇,主要给大家简单介绍Web服务器与Web框架的相关资料,需要的朋友可以参考下
  • web开发之搭建Python自带静态Web服务器1. 静态Web服务器是什么?2. 如何搭建Python自带的静态Web服务器3. 访问搭建的静态Web服务器4. 查看浏览器和搭建的静态Web服务器的通信过程 1. 静态Web服务器是什么? 可以为...
  • python搭建简单的静态web服务器 python搭建简单的静态web服务器储备知识 web服务器基本原理 大致流程 完整代码储备知识 一丢丢的python(io和多线程的知识) 一丢丢的http协议 一丢丢的tcp/ip协议(当然不了解也没...
  • Python语言配置WEB服务器不多见,但也不是很罕见,必经Python语言太"优美"了。早期我的WEB服务器配置为Nginx+uWSGI+app.py(bottle)。uWSGI号称比FastCGI还要快,于是我就采用了uWSGI,uWSGI"大而全",从上到下什么...
  • Python web服务器

    2017-07-02 19:24:00
    Python 配置wsgi接口# 引入Python wsgi包 from wsgiref.simple_server import make_server # 撰写服务器端程序代码 def Application(envirn,start_response): start_response('200 ok',[('Content-Type','...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,238
精华内容 5,695
关键字:

web服务器python

python 订阅