最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python 自動化數(shù)據(jù)提取之正則表達(dá)式

 更新時間:2025年04月01日 16:18:17   作者:測試界的飄柔  
這篇文章主要介紹了python 自動化數(shù)據(jù)提取之正則表達(dá)式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前 言

我們在做接口自動化的時候,處理接口依賴的相關(guān)數(shù)據(jù)時,通常會使用正則表達(dá)式來進(jìn)行提取相關(guān)的數(shù)據(jù),今天在這邊和大家聊聊如何在python中使用正則表達(dá)式。

正則表達(dá)式,又稱正規(guī)表示式、正規(guī)表示法、正規(guī)表達(dá)式、規(guī)則表達(dá)式、常規(guī)表示法(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),是計算機科學(xué)的一個概念。

正則表達(dá)式使用單個字符串來描述、匹配一系列匹配某個句法規(guī)則的字符串。按某種規(guī)則匹配的表達(dá)式被稱之為正則表達(dá)式,在python使用正則表達(dá)式,可以使用官方庫re來實現(xiàn),學(xué)習(xí)re模塊之前,我們先來了解一下正則表達(dá)式的基本語法。

正 則 表 達(dá) 式 語 法

表示單字符

單字符:即表示一個單獨的字符,比如匹配數(shù)字用\d ,匹配非數(shù)字使用\D,具體規(guī)則如下:

在這里插入圖片描述

表示數(shù)量

如果要匹配某個字符多次,就可以在字符后面加上數(shù)量進(jìn)行表示,具體規(guī)則如下:

在這里插入圖片描述

表示邊界

在這里插入圖片描述

匹配分組

在這里插入圖片描述

貪婪模式

貪婪模式:Python里數(shù)量詞默認(rèn)是貪婪的,總是嘗試匹配盡可能多的字符;

如下案例:有一個字符串s,我們需要在字符串中匹配3個以上的數(shù)字,字符串中數(shù)字有8個,貪婪模式會盡可能匹配更多字符,3個以上,8個也是3個以上,那么這里匹配的結(jié)果就是8個數(shù)字。

非貪婪模式:總是嘗試匹配盡可能少的字符,在"*“,”?“,”+“,”",后面加上?,可以關(guān)閉貪婪模式

關(guān)閉貪婪模式之后,盡可能獲取更少的,如下,只獲取到最前面的3個數(shù)值(至少3個,非貪婪就是最前面的3個)

r e 模 塊 的 使 用

在python中使用正則表達(dá)式,需要用到re模塊來進(jìn)行操作,這邊給大家介紹幾個re模塊中常用的方法。

No.1 re.match函數(shù)

參數(shù)說明:接收兩個參數(shù),

第一個是匹配的規(guī)則,

第二個是匹配的目標(biāo)字符串,

re.match嘗試從字符串的起始位置匹配一個模式,匹配成功 返回的是一個匹配對象(這個對象包含了我們匹配的信息),如果不是起始位置匹配成功的話,match()返回的就是空。

No.2 re.search 方法

參數(shù)說明:接收兩個參數(shù),

第一個是匹配的規(guī)則,

第二個是匹配的目標(biāo)字符串,

re.search 掃描整個字符串并返回第一個成功的匹配。

re.match與re.search的區(qū)別
re.match從字符串的開始位置進(jìn)行匹配,如果字符串開始不符合正則表達(dá)式,則匹配失敗,函數(shù)返回空;

而re.search匹配整個字符串,直到找到一個匹配成功的則進(jìn)行返回,如果整個字符串中都沒有找到匹配成功的,則返回空。

No.3 findall 方法

參數(shù)說明:接收兩個參數(shù),

第一個是匹配的規(guī)則,

第二個是匹配的目標(biāo)字符串,

在字符串中找到正則表達(dá)式所匹配的所有子串,并返回一個列表,如果沒有找到匹配的,則返回空列表。

注意:match 和 search 是匹配一個結(jié)果, findall 匹配處所有符合規(guī)則的結(jié)果。

No.4 sub 方法

替換字符串中的某些字符,可以用正則表達(dá)式來匹配被選子串。

re.sub(pattern, repl, string, count=0 )

參數(shù):

pattern:匹配的規(guī)則;

repl:匹配之后替換的新內(nèi)容;

string:需要按規(guī)則替換的字符串;

count:替換的次數(shù),可以不傳參,默認(rèn)替換所有符合規(guī)則的。

案 例 演 示

需求:整個正則表達(dá)式提取如下接口登錄之后返回的token值。

接口地址:http://47.112.233.130/users/login/
請求參數(shù):
返回結(jié)果:

{'refresh': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0b2tlbl90eXBlIjoicmVmcmVzaCIsImV4cCI6MTY1Mzk4MzMyNSwiaWF0IjoxNjUzODk2OTI1LCJqdGkiOiI2NTE2MTE0OGFhMDY0NWNjYWY2ZWE4YmYzYzY1YjE1ZSIsInVzZXJfaWQiOjJ9.fMkJfOdhczbr1MqvYE5b0qYlC5GewBlFZbrteMOLUv0', 'token': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNjUzOTgzMzI1LCJpYXQiOjE2NTM4OTY5MjUsImp0aSI6ImQ3Nzg1ZjY0YTk2YzQwYzliZDcwMmUxMDgzNjVkNWU5IiwidXNlcl9pZCI6Mn0.UNmLRQsXnZBltgL7QQVuBON2UEBQav87NSGy5Iqbnws'}

實現(xiàn)代碼

import requests
import re
# 登錄接口
login_url = 'http://47.112.233.130:8888/users/login/'


# 請求登錄接口,進(jìn)行登錄
params = {
    "username": "test",
    "password": "123456"
}
response = requests.post(url=login_url, json=params)
#使用正則表達(dá)式提取token
result = re.search(r'token":"(.+?)"',response.text)
token = result.group(1)

到此這篇關(guān)于python 自動化數(shù)據(jù)提取之正則表達(dá)式的文章就介紹到這了,更多相關(guān)python  數(shù)據(jù)提取正則表達(dá)式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python Pytorch深度學(xué)習(xí)之圖像分類器

    Python Pytorch深度學(xué)習(xí)之圖像分類器

    今天小編就為大家分享一篇關(guān)于Pytorch圖像分類器的文章,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-10-10
  • 如何基于matlab相機標(biāo)定導(dǎo)出xml文件

    如何基于matlab相機標(biāo)定導(dǎo)出xml文件

    這篇文章主要介紹了如何基于matlab相機標(biāo)定導(dǎo)出xml文件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • Pandas字符串操作的各種方法及速度測試

    Pandas字符串操作的各種方法及速度測試

    這篇文章主要為大家介紹了Pandas字符串操作的各種方法及速度測試,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • Python在固定文件夾批量創(chuàng)建固定后綴的文件(方法詳解)

    Python在固定文件夾批量創(chuàng)建固定后綴的文件(方法詳解)

    文章講述了如何使用Python批量創(chuàng)建后綴為.md的文件夾,生成100個,代碼中需要修改的路徑、前綴和后綴名,并提供了注意事項和代碼示例,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • python第三方庫pygame的使用詳解

    python第三方庫pygame的使用詳解

    這篇文章主要介紹了python第三方庫pygame的使用,pygame一般用來做游戲,在這需要注意在使用pygame提供的功能之前,需要調(diào)用init方法,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Python?seaborn?barplot畫圖案例

    Python?seaborn?barplot畫圖案例

    這篇文章主要介紹了Python?seaborn?barplot畫圖案例,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • Python多進(jìn)程同步簡單實現(xiàn)代碼

    Python多進(jìn)程同步簡單實現(xiàn)代碼

    這篇文章主要介紹了Python多進(jìn)程同步簡單實現(xiàn)代碼,涉及Python基于Process與Lock模塊運行進(jìn)程與鎖機制實現(xiàn)多進(jìn)程同步的相關(guān)技巧,需要的朋友可以參考下
    2016-04-04
  • 基于python 字符編碼的理解

    基于python 字符編碼的理解

    下面小編就為大家?guī)硪黄趐ython 字符編碼的理解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • termux中matplotlib無法顯示中文問題的解決方法

    termux中matplotlib無法顯示中文問題的解決方法

    這篇文章主要介紹了termux中matplotlib無法顯示中文問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python如何使用k-means方法將列表中相似的句子歸類

    Python如何使用k-means方法將列表中相似的句子歸類

    這篇文章主要介紹了Python如何使用k-means方法將列表中相似的句子聚為一類,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08

最新評論

阿克陶县| 阜新市| 蕉岭县| 灌阳县| 淳安县| 葫芦岛市| 八宿县| 明溪县| 永善县| 佛冈县| 皮山县| 西贡区| 高青县| 晋宁县| 勐海县| 抚宁县| 乌拉特中旗| 淳安县| 扎鲁特旗| 吉林省| 繁峙县| 鲜城| 徐水县| 大埔区| 增城市| 绍兴市| 磴口县| 敦煌市| 巫山县| 玉环县| 汉沽区| 麻江县| 霞浦县| 和平区| 商河县| 北宁市| 扶沟县| 东城区| 石狮市| 丁青县| 焉耆|