python 使用正則表達(dá)式判斷圖片路徑是否是超鏈接的示例
在Python中,判斷一個給定的字符串(假設(shè)為圖片路徑)是否是網(wǎng)頁鏈接(URL),你可以通過檢查該字符串是否符合URL的基本格式來實現(xiàn)。雖然這個方法不能保證鏈接一定指向圖片,但它能判斷該字符串是否是一個有效的網(wǎng)頁鏈接。
Python的urllib.parse
模塊提供了urlparse()
函數(shù),它可以用來解析URL,但直接用來判斷一個字符串是否為URL可能不夠直觀。更常用的是使用正則表達(dá)式(re
模塊)來檢查字符串的格式。
以下是一個使用正則表達(dá)式來判斷給定字符串是否為網(wǎng)頁鏈接(URL)的示例:
import re def is_url(s): url_regex = re.compile( r'^(?:http|ftp)s?://' # http:// or https:// r'(?:(?:[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?\.)+(?:[A-Z]{2,6}\.?|[A-Z0-9-]{2,}\.?)|' # domain... r'localhost|' # localhost... r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' # ...or ip r'(?::\d+)?' # optional port r'(?:/?|[/?]\S+)$', re.IGNORECASE) return bool(url_regex.match(s)) # 測試 test_urls = [ "http://example.com/image.jpg", "https://www.example.com", "ftp://ftp.example.com", "localhost:8080", "192.168.1.1", "not_a_url", "https://invalid-url-here", # 注意:這個實際上符合URL的基礎(chǔ)格式,但可能是無效的URL ] for url in test_urls: print(f"'{url}': {is_url(url)}")
請注意,這個正則表達(dá)式嘗試覆蓋常見的URL格式,包括HTTP/HTTPS、FTP、本地主機(jī)地址和IP地址。然而,它不能確保該URL是有效的(例如,域名可能不存在,或者IP地址可能無法訪問)。
如果你的目的是確保URL不僅格式正確,而且指向一個圖片,那么你需要進(jìn)行額外的HTTP請求來檢查響應(yīng)的內(nèi)容類型(例如,通過Content-Type
頭部),這通常涉及到使用如requests
庫來發(fā)起網(wǎng)絡(luò)請求。但是,這會增加復(fù)雜性和潛在的延遲。
到此這篇關(guān)于python 使用正則表達(dá)式判斷圖片路徑是否是超鏈接的文章就介紹到這了,更多相關(guān)python判斷圖片路徑是否是超鏈接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
對Python3.x版本print函數(shù)左右對齊詳解
今天小編就為大家分享一篇對Python3.x版本print函數(shù)左右對齊詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12python中isoweekday和weekday的區(qū)別及說明
這篇文章主要介紹了python中isoweekday和weekday的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07淺談Keras中fit()和fit_generator()的區(qū)別及其參數(shù)的坑
這篇文章主要介紹了Keras中fit()和fit_generator()的區(qū)別及其參數(shù)的坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05Python常用類型轉(zhuǎn)換實現(xiàn)代碼實例
這篇文章主要介紹了Python常用類型轉(zhuǎn)換實現(xiàn)代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07