import requests
myparameter=
r = requests.get("",myparameter);
print r.content
form裡沒有資料了,都在data裡:
import requests
import json
mydata =
r = requests.post('',data=json.dumps(mydata))
print r.text
結果
,
"data": ""
, "files": {},
"form": {},
"headers": ,
"json": ,
"origin": "***"
, "url": ""
}
這麼做資料在form裡
import requests
import json
mydata =
r = requests.post('',data=mydata)
print r.text
結果
,
"data": ""
, "files": {},
"form": ,
"headers": ,
"json": null
, "origin": "***"
, "url": ""
}
#encoding=utf-8
import requests
import json,os
os.chdir("h:/pythonworkspace/image");
#讀檔案要用rb,r是讀,b是二進位制
myfile =
r = requests.post("",files=myfile)
print r.text
結果
轉換成了base64編碼
,
"data": ""
, "files": ,
"form": {},
"headers": ,
"json": null
, "origin": "***"
, "url": ""
}
#encoding=utf-8
import requests
import json,os
url=''
user =
s = requests.session()
r = s.post(url,data=user)
print r.content
html = r.text
#獲取更多來訪者
vm = s.get('')
print vm.text
#encoding=utf-8
from socket import *
myhost = ''
myport = 801
#af_inet ipv4 protocol
#sock_stream top protocol
socketobj = socket(af_inet,sock_stream)
#bind 繫結的是乙個元組,用()括起來
socketobj.bind((myhost,myport))
socketobj.listen(128)
while true:
connection,address = socketobj.accept()
print
"connect by ", address
while true:
data = connection.recv(1024)
ifnot data:
break
connection.send('echo' + data)
connection.close()
# # -*- coding:utf-8 -*-
from socketserver import tcpserver, baserequesthandler
import traceback
class
mybaserequesthandler
(baserequesthandler):
''' 從baserequesthandler繼承,並重寫handler方法
'''defhandle
(self):
while
true:
# 當客戶主動斷開連線,recv會丟擲異常
try:
data = self.request.recv(1024).strip()
print
"receive from (%r):%r" % (self.client_address, data)
self.request.sendall(data.upper())
except:
traceback.print_exc()
break
if __name__ == "__main__":
host = ""
port = 12346
addr = (host, port)
server = tcpserver(addr,mybaserequesthandler)
server.serve_forever()
說明
%r的理解:
%r展示原始資料,做debug比%s好。
例子
>>> print
'%s, %s'
%('one', 'two')one, two>>> print
'%r, %r'
%('one', 'two')'one', 'two'
from socketserver import threadingtcpserver,streamrequesthandler
import traceback
class
mystreamrequesthandler
(streamrequesthandler):
defhandle
(self):
while
true:
try:
data = self.rfile.readline().strip()
print
"receive from %r:%r" % (self.client_address,data)
self.wfile.write(data.upper())
except:
traceback.print_exc()
if __name__ == "__main__":
host=""
port=1313
addr = (host,port)
#threadigtcpserver從threadingmixin和tcpserver繼承
server = threadingtcpserver(addr,mystreamrequesthandler)
server.serve_forever()
1 網路通訊基礎 筆記
1.1.報文 資料頭部 資料載荷 尾部 頭部和尾部都是一些資訊段,注意很多報文是沒有尾部的!封裝的過程就是將資料載荷分別加上頭部和尾部,同理可以理解解封裝。1.2.閘道器 閘道器是一種網路裝置,不是一種特定的裝置型別。在採用不同體系結構或者協議的網路之間進行互通時,用於提供協議轉換 路由選擇 資料交...
七 網路通訊 面試
1.http是無狀態通訊,http的請求方式有哪些,可以自己定義新的請求方式麼。2.socket通訊,以及長連線,分包,連線異常斷開的處理。3.socket通訊模型的使用,aio和nio。4.socket框架netty的使用,以及nio的實現原理,為什麼是非同步非阻塞。5.同步和非同步,阻塞和非阻塞...
94 網路通訊之網路概述
從程序間通訊說起 最後一種程序間通訊,是用網路域套接字socket,本來就是用作程序間通訊的,兩台電腦的兩個程序間的通訊。一開始是同乙個電腦中的兩個程序間的通訊。後來可以擴充套件道不同電腦主機。注意資訊流 網路通訊是分層次的,最高是api,我們應用只管api的編寫,網絡卡是考慮硬體的問題,我們只關心...