1.1、基礎原理
解析html資料
解析json資料
解析二進位制資料
4、儲存資料(資料庫、檔案)
1.2、發起http請求-request
常用的請求方法:get,post
其他請求方法:head,put,delete,opthons
uri通常由三部分組成:
①訪問資源的命名機制;
②存放資源的主機名;
③資源自身 的名稱,由路徑表示。
如下面的uri:
我們可以這樣解釋它:
①這是乙個可以通過http協議訪問的資源,
②位於主機 www.webmonkey.com.cn上,
③通過路徑「/html/html40」訪問。
user-agent:請求頭中如果沒有user-agent客戶端配置,服務端可能將你當做乙個非法使用者
host : 主機頭
cookies:cookie用來儲存登入資訊
get方式,請求體沒有內容
post方式,請求體是format data
1.3、獲取響應內容-response200:代表成功
301:代表跳轉
404:檔案不存在
403:許可權
502:伺服器錯誤
set-cookie:告訴瀏覽器,把cookie儲存下來
最主要的部分,包含了請求資源的內容如網頁html,、二進位制資料等
1.4、練手庫-urllib
import urllib.request
response = urllib.request.urlopen('')
print(response.read())
變數html包含html格式的網頁資料。
模擬web瀏覽器
web瀏覽器把瀏覽器名稱、版本與請求一起傳送,這稱為使用者**。python可以使用下面的**模仿這種方式。user-agent字串包含web瀏覽器的名稱和版本號:
import urllib.request
headers = {}
headers['user-agent'] = "mozilla/5.0 (x11; ubuntu; linux i686; rv:48.0) gecko/20100101 firefox/48.0"
req = urllib.request.request('', headers = headers)
html = urllib.request.urlopen(req)
print(html.read())
提交資料-get
與get請求一起傳遞的引數是通過附加到url末尾的查詢字串完成的,因此新增引數不需要任何特殊函式或類,需要做的事情就是確保查詢字串正確編碼和格式化。
建立包含在查詢字串中的鍵值對,可以建立乙個字典物件,然後使用urllib.parse模組中包含的urllib的urlencode()函式對該物件進行編碼和格式化。
import urllib.request
import urllib.parse
url = ""
params =
query_string = urllib.parse.urlencode( params )
url = url + "?" + query_string
with urllib.request.urlopen( url ) as response:
response_text = response.read()
print( response_text )
提交資料-post
建立乙個字典來儲存post引數的鍵值對,然後使用urlencode()進行格式化。格式化字串編碼為位元組並指定所需的字元編碼 。然後使用urlopen()正常開啟請求,新增資料作為額外的引數,將請求型別更改為post(預設為get) ,其中3個引數會附加到請求正文
import urllib.request
import urllib.parse
url = ""
params =
query_string = urllib.parse.urlencode( params )
data = query_string.encode("ascii")
with urllib.request.urlopen(url,data) as response:
response_text = response.read()
print(response_text)
遇到的問題-ssl需要驗證
urllib.error.urlerror:
解決方案
import ssl
import urllib.request
context = ssl._create_unverified_context()
html = urllib.request.urlopen('', context=context)
print(html.read().decode('utf-8'))
掃瞄器詳解
一 掃瞄器的定義 掃瞄器是一種獲取影象的裝置,並將資訊轉為電腦可以顯示 編輯 儲存和輸出的數字格式。即可以完成以下工作 在檔案中插隊圖和 將文字識別,免去打字 將傳真檔案掃到庫中存檔 在多 中加入影象 在報刊中加入有效表達主題。二 掃瞄器的工作原理 將光線照到待掃瞄的稿件上,光線反向回平後再由乙個稱...
Python打造漏洞掃瞄器 10
這是掃瞄器的最後一章,主要說說掃瞄器的使用方式以及對未來的展望。這個掃瞄器是python 2.7寫的,開發在windows平台上,測試在linux上 實驗樓的實驗平台 經過測試,在這兩個系統上都能夠執行。另外,只需要python安裝兩個庫就可以。在pip上的安裝指令 pip install requ...
Python指令碼 埠掃瞄器
乙個用python寫的簡單的埠掃瞄器,python環境為 3.7.0,windows系統 掃瞄給定主機是否開放了指定的埠tcp連線掃瞄是利用tcp的三次握手來確定主機的埠是否開放。確定主機埠開放之後,給埠傳送訊息,接收埠返回的訊息,然後判斷該埠執行的服務。使用時,h 引數可以提供主機的網域名稱或者i...