web服務本質
import socket
def main():
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.bind(('localhost',8081))
sock.listen(5)
while True:
print("server is working.....")
conn, address = sock.accept()
request = conn.recv(1024)
conn.sendall(bytes("HTTP/1.1 201 OK\r\n\r\n<h1>Hello Yuan</h1>","utf8"))
conn.close()
if __name__ == '__main__':
main()
html是什么?
-
超文本標記語言(Hypertext Markup Language,HTML)通過
標簽語言
來標記要顯示的網頁中的各個部分。一套規則,瀏覽器認識的規則
瀏覽器按順序渲染網頁文件,然后根據標記符解釋和顯示內容。但需要注意的是,對于不同的瀏覽器,對同一標簽可能會有不完全相同的解釋(兼容性)
靜態網頁文件擴展名:.html 或 .htm
html不是什么?
HTML 不是一種編程語言,而是一種標記語言 (markup language)
HTML 使用標記標簽來描述網頁
html結構
<!DOCTYPE html> 告訴瀏覽器使用什么樣的html或者xhtml來解析html文檔
<html></html>是文檔的開始標記和結束標記。此元素告訴瀏覽器其自身是一個 HTML 文檔,在它們之間是文檔的頭部<head>和主體<body>。
<head></head>元素出現在文檔的開頭部分。<head>與</head>之間的內容不會在瀏覽器的文檔窗口顯示,但是其間的元素有特殊重要的意義。
<title></title>定義網頁標題,在瀏覽器標題欄顯示。
<body></body>之間的文本是可見的網頁主體內容
html標簽格式
html標簽是由尖括號包圍的關鍵詞,比如<html>
html標簽通常是成對出現的,如<div></div>
標簽不區分大小寫,<html>等價于<HTML>,推薦使用小寫
標簽分為兩部分:開始標簽和結束標簽。兩個標簽之間的部分,我們叫做標簽體。有些標簽比較簡單,使用一個標簽即可,這種標簽叫做自閉合標簽。例如:
<br/><hr/>
標簽可以有若干個屬性,也可以不帶屬性。如<head>元素就不帶任何屬性
標簽可以嵌套,但不可以交叉嵌套。錯誤示范:
<a><b></a></b>
標簽的語法
<標簽名 屬性1=“屬性值1” 屬性2=“屬性值2”……>內容部分</標簽名>
<標簽名 屬性1=“屬性值1” 屬性2=“屬性值2”…… />