Skip to main content
 首页 » 编程设计

python之正则表达式以查找各种格式/标签的图像

2025年01月19日39arxive

我需要一个可在网站源代码中找到图像的正则表达式。到目前为止,我有:

images = re.findall(r'src=[\"|\']([^\"|\']+)[\"|\']',webpage.decode()) 
images.sort() 
print (f'[+] {len(images)} images Found:') 
for image in images: 
    print(image) 


这一直在寻找以下格式的图像:

<img src="2001-a-space-odyssey.JPG"/>

<img src="http://www.example.com/content/icon.gif"/>

但找不到以下格式的图像:

<form action="example.jpg">

<!-- <img src="big.jpg" /> -->

background-image:url("xine.png");

我需要一个正则表达式来查找所有这些,但是,我不希望像 png|jpeg|gif这样的表达式。

请您参考如下方法:

如果您对图像格式不那么在意,那么下面的表达式应该可以很好地完成您的工作:

pattern = "[\"|\'].*\.(?i:jpg|gif|png|bmp)[\"|\']" 
images = re.findall(pattern,webpage.decode()) 


我在这里我会忽略这种情况。

编辑:

pattern : "[\=,\(][\"|\'].[^\=\"]+\.(?i:jpg|gif|png|bmp)[\"|\']" 


注意:从匹配中删除前两个字符和最后一个字符应提供所需的输出

您可以在这里查看各种图像格式: Image file formats

希望这可以帮助 :)