第五十九節,模擬瀏覽器請求Python結合html基本格式

模擬瀏覽器請求Python結合html基本格式css

用Python模擬一個客戶端,結合打開一個HTML頁面html

建立客戶端python

#!/usr/bin/env python
# -*- coding:utf8 -*-
import socket #導入單線程通信模塊
def handle_request(client):
    buf = client.recv(1024)
    client.sendall(bytes("HTTP/1.1 201 OK\r\n\r\n","utf8")) #向客戶端發送內容,以字節形式發送
    f = open("1.html", "r", encoding="utf-8")   #打開HTML文件
    f2 = f.read()   #讀出HTML文件內容
    f.close()   #關閉打開的文件

    client.sendall(bytes(f2,"utf8")) #將讀出HTML文件內容向客戶端發送內容,以字節形式發送

def main():
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)     #建立服務端通信對象
    sock.bind(('localhost',8082))   #在服務端設置服務端ip和端口8
    sock.listen(5)      #監聽IP和端口,設置一個參數,表示最多鏈接排隊數量

    while True:
        connection, address = sock.accept()     #等待接收客戶端的請求,一旦有客戶端請求鏈接,就會返回兩個值,一個是鏈接對象,一個是客戶端的地址信息,因此須要兩個變量來接收
        handle_request(connection)  #執行handle_request函數,將客戶端請求鏈接傳入handle_request函數
        connection.close()  #關閉鏈接

if __name__ == '__main__':  #wds系統下if __name__ == "__main__"才能建立進程,咱們調試不要緊,之後在Linux系統沒這個問題

    main() #執行main函數

HTML頁面瀏覽器

將HTML頁面放入客服端相同的目錄裏socket

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>你好</h1>
</body>
</html>

啓動客戶端後在瀏覽器輸入http://127.0.0.1:8082/  能夠看到如下結果函數

你好

 

下面咱們開始講HTML知識搜索引擎

 

HTML基本格式編碼

<!DOCTYPE html>                     //文檔類型聲明
<html lang="zh-cn">                 //表示HTML文檔開始,屬性lang,屬性值=zh-cn(聲明中文網頁的意思)
<head>                              //包含文檔元素開始
    <meta charset="UTF-8">          //聲明字符編碼
    <title>標題</title>             //設置文檔標題
</head>                             //包含文檔元素結束
<body>                              //表示HTML內容開始

</body>                             //表示HTML內容結束
</html>                             //表示HTML文檔結束

 

<!DOCTYPE html>
它主要告訴瀏覽器所查看的文件類型,表示爲HTML文檔類型spa

 

<html lang="zh-cn"></html>
HTML元素是文檔開始和結尾的元素,它是一個雙標籤,包含內容,這個元素有一個屬性和屬性值,lang="zh-cn",表示文檔語言爲:簡體中文,若是是英文網頁爲lang="en"線程

 

<head> </head>
用來包含元數據內容,元數據內容包括:<link>、<meta>、<noscript>、<scripy>、<style>、<title>,這些內容用來向瀏覽器提供信息,好比link提供css信息,這些類型都是頁面不可見的

 

<meta>
這個元素能夠用來設置字符編碼,告訴瀏覽器頁面採用什麼編碼,除了設置編碼還有別的

 

<title></title>
這個元素是設置頁面的標題的,標題會顯示到瀏覽器上部,也會被搜索引擎識別

 

<body> </body>
用來包含文檔內容的元素,也就是瀏覽器可見部分,全部的可見部分都應該寫在這裏

相關文章
相關標籤/搜索