http-模擬瀏覽器獲取資料
import socket
def mian():
client_sk = socket.socket(socket.af_inet, socket.sock_stream)
client_sk.connect(('
ntlias3.boxuegu.com
', 80))
# 請求行
# 請求頭
request_header = 'host:
ntlias3.boxuegu.com
\r\nconnection:close\r\n'# 短連線connection:close,不寫缺省長連線
# 準備http請求報文資料
request_content = request_line + request_header + '\r\n'
# 傳送http請求報文資料
client_sk.send(bytes(request_content.encode('utf-8')))
# 接收服務端http響應報文資料
result = b'' # 定義空的二進位制變數
while true:
recv_data = client_sk.recv(1024)
if recv_data:
result += recv_data
if result.rfind('0\r\n'.encode('utf-8')) != -1:# 當響應結束後結束迴圈防止阻塞
break
else:
break
print(result)
response_content = result.decode('utf-8')
# 根據指定標識資料進行分割
response_list = response_content.split('\r\n\r\n', maxsplit=1)
print(len(response_list))
print(response_list[1])
client_sk.close()
if __name__ == '__main__':
mian()
pc瀏覽器模擬手機瀏覽器
很多 都通過user agent來判斷瀏覽器型別,如果是3g手機,顯示手機頁面內容,如果是普通瀏覽器,顯示普通網頁內容 谷歌chrome瀏覽器,可以很方便地用來當3g手機模擬器。在windows的 開始 執行 中輸入以下命令,啟動 谷歌瀏覽器,即可模擬相應手機的瀏覽器去訪問3g手機網頁 谷歌andr...
瀏覽器http快取
強快取 強快取命中不會傳送請求到伺服器端,直接從本地快取中獲取資源,狀態碼200 from cache 協商快取 協商快取會傳送請求到伺服器,伺服器通過請求頭部欄位來驗證資源是否命中協商快取,如果命中,則返回狀態碼304 not modified 通知瀏覽器從快取中獲取資源 4.1 last mod...
模擬使用者瀏覽器
模擬使用者瀏覽器,header會被伺服器檢測,需要改useragent 估計是限制了user agent lwp useragent是乙個模擬使用者瀏覽器的類,在使用的時候得首先建立乙個lwp useragent的物件,然後再設定這個物件的相關引數,它然後再建立http request例項,並傳送請...