Python筆記 網路程式設計

2022-07-27 18:42:13 字數 1905 閱讀 7733

python內建封裝了很多常見的網路協議的庫,因此python成為了乙個強大的網路程式設計工具,這裡是對python的網路方面程式設計的乙個簡單描述。

urllib 和urllib2是python標準庫中最強的網路工作庫。這裡簡單介紹下urllib模組。本次主要用urllib模組中的常用的幾個模組:

urlopen

parse

urlencode

quote

unquote

_safe_quoters

unquote_plus

使用urllib 進行http協議的get請求,並獲取介面的返回值:

from urllib.request import

urlopen

url = '

'#開啟url

#urllib.request.urlopen(url)

#開啟url並讀取資料,返回結果是bytes型別:b'\n'

res =urlopen(url).read()

print

(type(res), res)

#將bytes型別轉換為字串

print(res.decode())

from urllib.request import

urlopen

from urllib.parse import

urlencode

url = '

'#請求引數,寫成json型別,後面是自動轉換為key-value形式

data =

#使用urlencode(),將請求引數(字典)裡的key-value進行拼接

#拼接成username=hahaha&pwd=123456&confirmpwd=123456

#使用encode()將字串轉換為bytes

param =urlencode(data).encode()

#輸出結果:b'pwd=123456&username=hahaha&confirmpwd=123456'

print

(param)

#post請求,需要傳入請求引數

res =urlopen(url, param).read()

res_str =res.decode()

print(type(res_str), res_str)

注:使用urllib請求post介面時,以上例子,post介面的請求引數型別是key-value形式,不適用json形式入參。

對請求的url中帶有特殊字元時,進行轉義處理。

from urllib.parse import

urlencode, quote, _safe_quoters, unquote, unquote_plus

url3 = '

'#url中包含特殊字元時,將特殊字元進行轉義, 輸出:https%3a

new_url =quote(url3)

print(new_url)

對轉義過的特殊字元進行解析操作。

將轉義後的特殊字元進行解析,解析為特殊字元

new_url =unquote(url4)

#輸出結果:

print

(new_url)

#最大程度的解析

print('

plus:

', unquote_plus(url4))

以上就是簡單介紹下urllib,對介面處理時還請參考requests模組~~~

python網路程式設計筆記

socket 套接字 實現不同主機之間的程序間通訊,python中socket模組下的socket addressfamily,type 第乙個引數可以選擇af inet 用於internet程序間通訊 或af unix 用於同一臺機器程序通訊 通常用af inet type可以是 sock str...

Python網路程式設計 筆記

前言 python網路程式設計 介紹了網路程式設計基礎,並提供了 示例。很喜歡的一點是提供了乙個網路實驗環境。1.編碼與解碼 解碼 decoding 是在應用程式使用位元組時發生的。編碼 encoding 是程式將字串對外輸出時所實施的過程。2.路由 根據目的ip位址選擇將ip資料報發往何處就叫做路...

python 網路程式設計基礎 筆記

第二章 網路客戶端 建立socket tcp client 獲取當前根目錄下檔案列表 s.shutdown 1 資料呼叫shutdown函式才能確保傳送 while 1 buf s.recv 2048 if not len buf breaksys.stdout.write buf 建立socket...