目的:
把 B_yml 中的 url 替换成,A_yaml 中的 url。
代码:
此方法并不通用,想要通用,可自行修改成方法、类的使用。
import yaml
import re
A_path = "A.yaml"
B_path = "B.yml"
data = ''
with open(A_path, "r", encoding="utf-8") as f:
# yaml文件转成字典,取到需要的数据
A_url = yaml.load(f, Loader=yaml.FullLoader)["platformversion"]["url"]
print("A_url:%s"%A_url)
# yml文件转成字典
with open(B_path, 'rb')as f:
res = yaml.load(f, Loader=yaml.FullLoader)
datasource_url = res["spring"]["datasource"]["url"]
B_url = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", datasource_url)[0]
print("B_url:%s"%B_url)
datasource_url = datasource_url.replace(B_url, A_url)