【愚公系列】《Python網絡爬蟲從入門到精通》045-Charles的SSL證書的安裝

標題詳情
作者簡介愚公搬代碼
頭銜華為云特約編輯,華為云云享專家,華為開發者專家,華為產品云測專家,CSDN博客專家,CSDN商業化專家,阿里云專家博主,阿里云簽約作者,騰訊云優秀博主,騰訊云內容共創官,掘金優秀博主,亞馬遜技領云博主,51CTO博客專家等。
近期榮譽2022年度博客之星TOP2,2023年度博客之星TOP2,2022年華為云十佳博主,2023年華為云十佳博主,2024年華為云十佳博主等。
博客內容.NET、Java、Python、Go、Node、前端、IOS、Android、鴻蒙、Linux、物聯網、網絡安全、大數據、人工智能、U3D游戲、小程序等相關領域知識。
歡迎👍點贊、?評論、?收藏

文章目錄

  • 🚀前言
  • 🚀一、Charles的SSL證書的安裝
    • 🔎1.安裝PC端證書
    • 🔎2.設置代理
    • 🔎3.配置網絡
    • 🔎4.安裝手機端證書
  • 🚀二、使用Python Selenium編寫自動化UI測試腳本
    • 🔎1.安裝Selenium庫
    • 🔎2.自動化UI測試腳本編寫
  • 🚀三、運行自動化UI測試腳本
    • 🔎1.首次執行與錯誤解決
    • 🔎2.再次執行
      • 🦋2.1 數據綁定案例
        • ??2.1.1
          • 🌈2.1.1.1
            • 🍬2.1.1.1.1
  • 🚀四、結論


🚀前言

在進行網絡調試和API測試時,HTTPS協議的普及為數據傳輸提供了更高的安全性,但同時也給網絡抓包帶來了挑戰。為了能夠有效地監控和分析加密的HTTPS流量,Charles工具提供了SSL證書的安裝功能,使我們能夠輕松地解密和查看加密數據的內容。這對于開發者和測試人員來說,尤其是在調試移動應用和Web服務時,顯得尤為重要。

在本篇文章中,我們將詳細講解如何安裝和配置Charles的SSL證書。我們會一步步指導你完成證書的生成、安裝和信任設置,確保你能夠順利地捕獲和分析HTTPS請求與響應。同時,我們還將分享一些常見問題的解決方案,幫助你在使用過程中避免可能遇到的困擾。

🚀一、Charles的SSL證書的安裝

🔎1.安裝PC端證書

Charles工具安裝完成后,在菜單中或底部搜索位置找到Charles啟動圖標,啟動Charles工具。Charles啟動后將默認獲取當前PC端中的所有網絡請求,例如,自動獲取PC端瀏覽器中訪問的百度頁面,不過在查看請求內容時,將顯示如圖所示的亂碼信息。
在這里插入圖片描述
Charles在默認的情況下可以獲取PC端中的網絡請求。

日前的網頁多數都是使用HTTPS與服務端進行數據交互,而通過HTTPS傳輸的數據都是加密的,所以此時通過Chares所獲取到的信息會是亂碼,此時需要安裝PC端SSL證書。安裝PC端SSL證書的具體步驟如下:

(1)打開Charles工具,依次選擇Help→SSL Proxying→Install Charles Root Certificate選項打開安裝SSL證書界面,如圖所示。
在這里插入圖片描述
(2)在已經打開的安裝SSL證書界面中單擊“安裝證書”按鈕,如圖所示。然后在證書導入向導窗口中直接單擊“下一步”按鈕,如圖所示。
在這里插入圖片描述
在這里插入圖片描述
(3)打開證書向導的“證書存儲”界面,在該界面中首先選中“將所有的證書都放入下列存儲”單選按鈕,然后單擊“瀏覽”按鈕,選擇證書的存儲位置為“受信任的根證書頒發機構”,再單擊“確定”按鈕,最后單擊“下一步”按鈕即可,如圖所示。
在這里插入圖片描述
(4)在證書導入向導的“正在完成證書導入向導”界面中,直接單擊“完成”按鈕,如圖所示。
在這里插入圖片描述

(5)在彈出的安全警告框中單擊“是”按鈕,如圖所示,即可完成SSL證書的安裝。
在這里插入圖片描述
(6)在“導入成功”的提示對話框中單擊“確定”按鈕,如圖所示,然后在安裝證書的窗口中單擊“確定”按鈕,如圖所示。
在這里插入圖片描述
在這里插入圖片描述

🔎2.設置代理

PC端的SSL證書安裝完成后,在獲取請求詳情內容時依然顯示亂碼。此時還需要設置SSL代理,設置SSL代理的具體步驟如下。

在Charles工具中,依次選擇Proxy→SSL Proxying Settings命令,如圖所示。
在這里插入圖片描述

在SSL Proxying選項卡中選中Enable SSL Proxying復選框,然后單擊左側Include下面對應的Add按鈕,在Edit Location窗口中設置指定代理,如果沒有代理的情況下,則可以將其設置為*(表示所有的SSL)即可,如圖所示。

SSL代理設置完成后,重新啟動Charles,再次打開瀏覽器中的百度網頁,單擊左側目錄中的“/”將顯示如圖所示的請求內容。
在這里插入圖片描述
在這里插入圖片描述

🔎3.配置網絡

如果需要通過Charles抓取手機中的請求地址時,需要保證PC端與手機端在同一網絡環境下,然后為手機端進行網絡配置。配置網絡的具體步驟如下。

(1)確定PC(電腦端)與手機端在同一網絡下,然后在Charles工具的窗體中依次選擇Help→SSlProxying→Install Charles Root Certificate on a Mobile Device or Remote Browser選項,如圖所示。
在這里插入圖片描述

(2)在打開的移動設備安裝證書的信息提示框中,需要記錄ip地址與端口號,如圖所示。
在這里插入圖片描述

(3)將提示框中的ip地址與端口號記住后,將手機(這里以IOS手機為例)WiFi連接與PC(電腦端)同一網絡的WiFi,然后在手機WiFi列表中長按已經連接的WiFi,在彈出的菜單中選擇“修改網絡”,如圖所示。
在這里插入圖片描述
(4)在修改網絡的界面中,首先選中“顯示高級選項”,然后在“服務器主機名”與“服務器端口”所對應的位置,填寫Charles在移動設備安裝證書的信息提示框中所給出的IP與端口號,單擊“保存”按鈕,如圖所示。
在這里插入圖片描述
(5)在手機端將服務器主機與端口號設置完成后,的確認對話框,在該對話框中直接單擊Allow按鈕即可,如圖所示。PC端(電腦端)Charles將自動彈出是否信任此設備。
在這里插入圖片描述

如果PC端的Charles沒有如圖所示的提示框,可以在PC端命令行窗口內通過ipconfig獲取當前PC端的無線局域適配器所對應的IPv4地址,并將該地址設置在步驟(4)手機連接WiFi的服務器主機名中。

🔎4.安裝手機端證書

PC端與手機端的網絡配置完成后,需要將Charles證書保存在PC端,然后安裝在手機端,這樣Charles才可以正常地抓取手機App中的網絡請求。安裝手機端證書的具體步驟如下。

(1)在Charles工具中依次選擇Help→SSL Proxying→Save Charles Root Certificate…命令,如圖所示。
在這里插入圖片描述

(2)在Charles SsL證書文件保存在PC端的窗口中,將證書文件保存在PC端的指定路徑下,如圖所示。

🚀二、使用Python Selenium編寫自動化UI測試腳本

🔎1.安裝Selenium庫

🔎2.自動化UI測試腳本編寫

🚀三、運行自動化UI測試腳本

🔎1.首次執行與錯誤解決

🔎2.再次執行

🦋2.1 數據綁定案例

??2.1.1
🌈2.1.1.1
🍬2.1.1.1.1

🚀四、結論

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/71926.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/71926.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/71926.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vulnhub靶場【digitalworld.local系列】的electrical靶機

前言 靶機:digitalworld.local-electrical,IP地址為192.168.10.12,后期因為卡頓,重新安裝,ip地址后面為192.168.10.11 攻擊:kali,IP地址為192.168.10.6 kali采用VMware虛擬機,靶機…

macos 程序 運行

sudo xattr -r -d com.apple.quarantine [/Applications/Name]使用stow 管理配置文件

多視圖幾何--結構恢復--三角測量

三角測量 1. 核心公式推導 假設兩個相機的投影矩陣為 P P P 和 P ′ P P′,對應的匹配圖像點(同名點)為 ( u , v ) (u, v) (u,v) 和 ( u ′ , v ′ ) (u, v) (u′,v′),目標是求解三維點 X [ X x , X y , X z , 1 ] T X [X_x, X_y, X_z, 1]^T X…

共享內存的原理和創建

目錄 共享內存的原理 共享內存的創建 代碼實現創建 共享內存的管理指令 我們今天來學習共享內存!!! 共享內存的原理 兩個進程同時使用內存中開辟的共享空間進行通信就是建立并使用共享內存進行進程間的通信。System V 共享內存&#xf…

3.10[A]cv

核心模塊: rasterizer:光柵化器,負責三角形遍歷和像素繪制Shader:包含頂點著色器和多種片元著色器Texture:紋理處理模塊 頂點著色器的計算量一般遠小于片元著色器。因為組成三角形的頂點相對有限,而片元需…

mac使用Homebrew安裝miniconda(mac搭建python環境),并在IDEA中集成miniconda環境

一、安裝Homebrew mac安裝brew 二、使用Homebrew安裝miniconda brew search condabrew install miniconda安裝完成后的截圖: # 查看是否安裝成功 brew list環境變量(無需手動配置) 先執行命令看能不能正常返回,如果不能正常…

多視圖幾何--相機標定--從0-1理解張正友標定法

1基本原理 1.1 單應性矩陣(Homography)的建立 相機模型:世界坐標系下棋盤格平面(Z0)到圖像平面的投影關系為: s [ u v 1 ] K [ r 1 r 2 t ] [ X Y 1 ] s \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} K…

WWDG窗口看門狗原理

WWDG(窗口看門狗)在窗口期喂狗 作用: 原理: 框圖 WWDG寄存器: WWDG_CR控制寄存器 WWDG_CFR配置寄存器 狀態寄存器WWDG_SR 超時時間計算公式 最小最大超時值 HAL配置函數: 1. IWDG 和 WWDG 的區別 IWDG&…

無公網IP也能遠程控制Windows:Linux rdesktop內網穿透實戰

文章目錄 前言1. Windows 開啟遠程桌面2. Linux安裝rdesktop工具3. Win安裝Cpolar工具4. 配置遠程桌面地址5. 遠程桌面連接測試6. 設置固定遠程地址7. 固定地址連接測試 前言 如今遠程辦公已經從一種選擇變成了許多企業和個人的必修課,而如何在Linux系統上高效地訪…

Pygame實現射擊鴨子游戲3-2

2 鴨子類Target的創建 2.1 __init__()函數 Target類的__init__()函數代碼如圖5所示。 圖5 __init__()函數代碼 其中,第18行將Target類聲明為pygame.sprite.Sprite類的子類;第19行代碼中,__init__()函數的img_path參數表示鴨子圖片的文件名…

利用Java爬蟲獲取衣聯網商品詳情:實戰指南

在電商領域,獲取商品詳情是數據分析和市場研究的重要環節。衣聯網作為知名的電商平臺,提供了豐富的服裝商品資源。本文將詳細介紹如何利用Java編寫爬蟲程序,通過商品ID獲取衣聯網商品詳情。 一、準備工作 (一)環境搭…

五、OpenGL中Shader與C++數據傳輸

文章目錄 一、概述二、Shader 代碼文件的基本格式三、Shader的向量語法介紹四、Shader之間的數據傳輸五、Shader與C的數據傳輸uniform六、完整示例 一、概述 在 OpenGL 中,Shader(著色器)使用 GLSL(OpenGL Shading Language&…

【3DMAX插件】3DMAX建筑大師插件MasterBuilder使用方法

3DMAX建筑大師插件是一款專為3DMAX設計的程序化(參數化)建筑建模工具,其最大特點是能夠一鍵生成建筑模型,極大地提升了工作效率。該插件配備了多種結構控制選項,涵蓋陽臺、門窗、欄桿、樓頂水塔等附屬建筑元素&#xf…

隱私保護在 Facebook 用戶身份驗證中的應用

在這個數字化的時代,個人隱私保護成為了公眾關注的焦點。社交媒體巨頭 Facebook 作為全球最大的社交平臺之一,擁有數十億用戶,其在用戶身份驗證過程中對隱私保護的重視程度直接影響著用戶的安全感和信任度。本文將探討 Facebook 在用戶身份驗…

Swift Package Manager (SPM) 創建并集成本地庫

在macOS 項目中,使用 Swift Package Manager (SPM) 創建并集成本地庫的完整步驟。 創建一個macos應用程序,選擇 swift、oc、swiftui都可以。 創建好應用之后,開始創建SPM本地庫。 打開終端app,進入項目根目錄,逐次輸…

滲透測試之利用sql拿shell(附完整流程+防御方案)【下】

導讀: 時刻保持謙遜,始終保持學習,探尋事物的本質,不要把事情復雜化 話不多說,書接上回 三、利用日志getshell 利用條件: 擁有網站的寫入權限知道網站的絕對路徑數據庫日志開啟 實際操作: (1)查看數據庫日志是否開啟以及路徑 show variables like %general%; (2…

LeetCode 熱題 100_每日溫度(72_739_中等_C++)(棧)(暴力破解;棧(從左到右);棧(從右到左))

LeetCode 熱題 100_每日溫度(72_739) 題目描述:輸入輸出樣例:題解:解題思路:思路一(暴力破解法(雙重循環)):思路二(棧:從左到右)&…

【HarmonyOS Next之旅】DevEco Studio使用指南(二)

目錄 1 -> 工程模板介紹 2 -> 創建一個新的工程 2.1 -> 創建和配置新工程 2.1.1 -> 創建HarmonyOS工程 2.2.2 -> 創建OpenHarmony工程 1 -> 工程模板介紹 DevEco Studio支持多種品類的應用/元服務開發,預置豐富的工程模板,可以根…

unity3d 背景是桌面3d數字人,前面是web的表單

是可以實現的,但涉及多個技術棧的結合,包括 Unity3D、Web 技術(HTML、JavaScript)、以及可能的 WebGL 或 WebRTC 技術。大致有以下幾種實現方案: 方案 1:Unity 作為獨立應用(桌面端&#xff0…

貓耳大型活動提效——組件低代碼化

1. 引言 貓耳前端在開發活動的過程中,經歷過傳統的 pro code 階段,即活動頁面完全由前端開發編碼實現,直到 2020 年接入公司內部的低代碼活動平臺,滿足了大部分日常活動的需求,運營可自主配置活動并上線,釋…