手動建立客戶端和服務(wù)器端

天天寫一些源碼分析感覺沒什么意思,這一系列的文章帶大家用python進行網(wǎng)絡(luò)編程吻贿,編寫一些黑客常用工具及腳本齿穗,希望大家喜歡涉波。
首先我們先來看一下手動編寫的tcp_client:

# coding=utf8

import socket

target_host = "www.baidu.com"
target_port = 80

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

client.connect((target_host, target_port))

client.send("GET / HTTP/1.1\r\nhost: baidu.com\r\n\r\n")

response = client.recv(4096)
print(response)

這里target_port表示目標地址端口,host表示請求地址名稱鳞贷,利用socket的屬性進行鏈接坯汤,然后發(fā)送數(shù)據(jù)接受數(shù)據(jù)。

接著我們上tcp_server的代碼:

# coding=utf8

import socket
import threading

bind_ip = "127.0.0.1"
bind_port = 9999

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

server.bind((bind_ip, bind_port))

server.listen(5)

print "[*] Listening on %s %s" % (bind_ip, bind_port)


def handle_client(client_socket):
    request = client_socket.recv(1024)
    print "[*] Received: %s" % request

    client_socket.send("ACK!")
    client_socket.close()


while 1:
    client, addr = server.accept()
    print "[*] Accepted connection from : %s:%d" % (addr[0], addr[1])

    client_handle = threading.Thread(target=handle_client, args=(client,))
    client_handle.start()

這里同樣是首先建立一個socket對象搀愧,其實客戶端和服務(wù)器的本質(zhì)都是socket之間的通信惰聂,只不過服務(wù)器端需要監(jiān)聽端口,編寫一個處理接受的數(shù)據(jù)的函數(shù)而已咱筛。這里我們利用無線循環(huán)進行不停的處理發(fā)送過來的請求搓幌,這是最簡單的處理方式,還有很多高級的利用內(nèi)核事件的處理方式迅箩,暫時不說溉愁,把這理解透徹,一點一點來饲趋。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末拐揭,一起剝皮案震驚了整個濱河市撤蟆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌堂污,老刑警劉巖家肯,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異盟猖,居然都是意外死亡讨衣,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進店門式镐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來反镇,“玉大人,你說我怎么就攤上這事娘汞〈醪瑁” “怎么了?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵你弦,是天一觀的道長辆亏。 經(jīng)常有香客問我,道長鳖目,這世上最難降的妖魔是什么扮叨? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮领迈,結(jié)果婚禮上彻磁,老公的妹妹穿的比我還像新娘。我一直安慰自己狸捅,他們只是感情好衷蜓,可當(dāng)我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著尘喝,像睡著了一般磁浇。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上朽褪,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天置吓,我揣著相機與錄音,去河邊找鬼缔赠。 笑死衍锚,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的嗤堰。 我是一名探鬼主播戴质,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了告匠?” 一聲冷哼從身側(cè)響起戈抄,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎后专,沒想到半個月后呛凶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡行贪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了模闲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片建瘫。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖尸折,靈堂內(nèi)的尸體忽然破棺而出啰脚,到底是詐尸還是另有隱情,我是刑警寧澤实夹,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布橄浓,位于F島的核電站,受9級特大地震影響亮航,放射性物質(zhì)發(fā)生泄漏荸实。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一缴淋、第九天 我趴在偏房一處隱蔽的房頂上張望准给。 院中可真熱鬧,春花似錦重抖、人聲如沸露氮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽畔规。三九已至,卻和暖如春恨统,著一層夾襖步出監(jiān)牢的瞬間叁扫,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工畜埋, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留陌兑,地道東北人。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓由捎,卻偏偏與公主長得像兔综,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,500評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 個人認為软驰,Goodboy1881先生的TCP /IP 協(xié)議詳解學(xué)習(xí)博客系列博客是一部非常精彩的學(xué)習(xí)筆記涧窒,這雖然只是...
    貳零壹柒_fc10閱讀 5,060評論 0 8
  • 1.這篇文章不是本人原創(chuàng)的,只是個人為了對這部分知識做一個整理和系統(tǒng)的輸出而編輯成的锭亏,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,075評論 6 174
  • 1纠吴、TCP狀態(tài)linux查看tcp的狀態(tài)命令:1)、netstat -nat 查看TCP各個狀態(tài)的數(shù)量2)慧瘤、lso...
    北辰青閱讀 9,437評論 0 11
  • 末曉JZ閱讀 139評論 0 1
  • 搭建屬性庫的前提戴已,首選需要確定屬性的目的性,如何快速便捷的讓各個展示端去調(diào)用去锅减,屬性庫的價值在哪里糖儡,想通這一點,我...
    趣味產(chǎn)品閱讀 1,288評論 1 51