學習自廖雪峰的python教程,**也是參照著他的教程敲的。
這個例子是乙個tcp客戶端python程式設計的例子,
(1)首先建立乙個tcp的socket
(2)然後呼叫socket的方法與伺服器進行連線
(3)連線之後給伺服器傳送一條http請求
(4)接收伺服器返回的http響應(包括包頭和html資料)
(5)關閉連線,把接收到的資料列印或另存
# -*- coding: utf-8 -*- 宣告編碼格式為utf-8使支援中文
#匯入socket庫
import socket
'''建立乙個socket,
af_inet表示用ipv4協議,af_inet6表示ipv6協議,
sock_stream指定使用面向流的tcp協議'''
s = socket.socket(socket.af_inet, socket.sock_stream)
#建立連線
s.connect(('www.sina.com.cn',80))
#給伺服器傳送http請求命令
#接收資料
buffer =
while true:
#recv(maxbytes)設定每次最多接收1k位元組
d = s.recv(1024)
if d:
else:
break
data = b''.join(buffer)
#關閉連線
s.close()
#接收到的是二元組:(http響應頭,html檔案資料)
header, html = data.split(b'\r\n\r\n', 1)
print(header.decode('utf-8')) #把http響應頭列印出來
#把接收到的html資料寫入檔案
with open('sina.html', 'wb') as f:
f.write(html)
程式執行後列印的http header:
C Socket程式設計之小試牛刀
名義上學了c 已經1年多了,從底層api玩起到高層mfc的使用,基於cocos2d x遊戲引擎也算是開發過幾款端遊和一些手遊了。不過那段時間做的都是單機遊戲,對於c 網路這塊幾乎沒有接觸過,今天突然有此想法,就利用一點時間玩了下socket程式設計,做了個建議的單向聊天demo。先來個效果圖,介面確...
boost graph lib 小試牛刀
最近要做社會網路的社群發現,發現用bgl能減少不少 量。經過一番調研發現bgl封裝的很牛叉,dijkstra等演算法統統具備,奈何自己對泛型程式設計不太熟,遇到問題還是很糾結。primer泛型程式設計 演算法部分和stl原始碼分析接下來有時間一定要讀下。下面僅以鄰接鍊錶和自定義節點為例 typede...
Anti Debug 小試牛刀
本文整理了日常生活中遇到的一些anti debug技術,除非特殊說明,均適用於mac ios開發 作為第一篇正式博文,會不定期更新,謝謝大家.123 4567 89 define pt deny attach 31 include intmain 程式正常執行,會輸出hello 但是程式載入到gdb...