如何用Python Selenium从href链接提取指定版本信息?
提取链接中的版本标识解决方案
针对你用Python Selenium抓取链接后,需要从exe链接中提取版本标识的需求,这里提供两种实用方法:
方法1:字符串分割法
利用链接固定的结构(/software/版本标识.exe),通过分割字符串直接提取版本:
# 假设你已获取到前缀信息和对应链接,存储在data列表中 data = [ ("S: July 2022", "https://bdn-ak-ssl.site.com/software/s96_8_80.exe"), ("B: July 2022", "https://bdn-ak-ssl.site.com/software/b43_6_56.exe"), ("BB: July 2022", "https://bdn-ak-ssl.site.com/software/bb202_2_100.exe") ] for prefix, url in data: # 分割链接取最后一段文件名,再移除.exe后缀 version = url.split('/')[-1].replace('.exe', '') print(f"{prefix} {url} Version: {version}")
方法2:正则表达式法
如果链接结构可能有变化,用正则匹配更灵活,精准捕获/software/和.exe之间的内容:
import re data = [ ("S: July 2022", "https://bdn-ak-ssl.site.com/software/s96_8_80.exe"), ("B: July 2022", "https://bdn-ak-ssl.site.com/software/b43_6_56.exe"), ("BB: July 2022", "https://bdn-ak-ssl.site.com/software/bb202_2_100.exe") ] # 匹配/software/后到.exe前的所有字符 pattern = r'/software/([^.]+)\.exe' for prefix, url in data: match_result = re.search(pattern, url) if match_result: version = match_result.group(1) print(f"{prefix} {url} Version: {version}")
运行任意一种方法,都能得到你期望的输出:
S: July 2022 https://bdn-ak-ssl.site.com/software/s96_8_80.exe Version: s96_8_80 B: July 2022 https://bdn-ak-ssl.site.com/software/b43_6_56.exe Version: b43_6_56 BB: July 2022 https://bdn-ak-ssl.site.com/software/bb202_2_100.exe Version: bb202_2_100
内容的提问来源于stack exchange,提问作者bigmike
相关产品推荐
相关产品推荐

