python 匹配url中是否存在IP地址的方法
因?yàn)樾枰獧z測一個一個鏈接中是否包含了IP地址,在這里需要使用到正則表達(dá)式 ,python完美的支持了正則表達(dá)式,在這里使用re模塊來完成,對正則表達(dá)式并不是很熟練,每次都是需要用的時候現(xiàn)查一下然后寫一下,這里給出來自己的代碼以及借鑒別人的匹配模式
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' 功能:對于給定的URL,檢測其中是否包含IP ''' import re def ip_exist_two(one_url): compile_rule = re.compile(r'(?<![\.\d])(?:\d{1,3}\.){3}\d{1,3}(?![\.\d])') match_list = re.findall(compile_rule, one_url) if match_list: print match_list else: print 'missing................' def ip_exist_one(one_url): compile_rule = re.compile(r'\d+[\.]\d+[\.]\d+[\.]\d+') match_list = re.findall(compile_rule, one_url) if match_list: print match_list else: print 'missing................' if __name__ == '__main__': ip_list = ['http://101.23.45.67/sd/sd.html','http://www.baidu.com', 'http://34.54.65.3/dsdfjkk.htm','http://dhj.fdjjd.com/78078979/dsdfjkk.htm'] for one_url in ip_list: ip_exist_one(one_url) print '****************************************************' for one_url in ip_list: ip_exist_two(one_url)
ip_exist_one(one_url)里面是自己的匹配模式,個人感覺更簡練一下,ip_exist_two(one_url)里面是網(wǎng)上提供的匹配IP的正則表達(dá)式,感覺比較繁雜一下,不過試驗(yàn)了一下都是可以正確匹配出來結(jié)果的。
下面是打印出來的結(jié)果
['101.23.45.67'] missing................ ['34.54.65.3'] missing................ **************************************************** ['101.23.45.67'] missing................ ['34.54.65.3'] missing................
以上這篇python 匹配url中是否存在IP地址的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python3啟動web服務(wù)引發(fā)的一系列問題匯總
由于行內(nèi)交付的機(jī)器已自帶python3 ,沒有采取自行安裝python3,但是運(yùn)行python腳本時報沒有tornado module,遇到這樣的問題如何處理呢,下面小編給大家介紹下python3啟動web服務(wù)引發(fā)的一系列問題匯總,感興趣的朋友一起看看吧2023-02-02pycharm配置python 設(shè)置pip安裝源為豆瓣源
這篇文章主要介紹了pycharm配置python 設(shè)置pip安裝源為豆瓣源,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Tensorflow中TFRecord生成與讀取的實(shí)現(xiàn)
TFRecord格式的文件存儲形式會很合理的幫我們存儲數(shù)據(jù),本文主要介紹了Tensorflow中TFRecord生成與讀取的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Python如何存儲和讀取ASCII碼形式的byte數(shù)據(jù)
這篇文章主要介紹了Python如何存儲和讀取ASCII碼形式的byte數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05python使用梯度下降算法實(shí)現(xiàn)一個多線性回歸
這篇文章主要為大家詳細(xì)介紹了python使用梯度下降算法實(shí)現(xiàn)一個多線性回歸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-03-03Windows下anaconda安裝第三方包的方法小結(jié)(tensorflow、gensim為例)
conda的設(shè)計(jì)理念——conda將幾乎所有的工具、第三方包都當(dāng)做package對待,甚至包括python和conda自身!因此,conda打破了包管理與環(huán)境管理的約束,能非常方便地安裝各種版本python、各種package并方便地切換2018-04-04