feat: sanitize all yaml

This commit is contained in:
knoflook 2022-03-18 13:59:14 +01:00
parent bac9bbd7b3
commit 2fbc952a72
Signed by untrusted user: knoflook
GPG Key ID: D6A1D0E8FC4FEF1C

View File

@ -5,7 +5,6 @@ from hashlib import md5
from ast import literal_eval as make_tuple
from pathlib import Path
from urllib.parse import urlparse
from re import sub
import arrow
import feedparser
@ -14,7 +13,8 @@ import requests
from bs4 import BeautifulSoup
from slugify import slugify
from re import compile as re_compile
yamlre = re_compile('"')
from re import sub
yamlre = re_compile('[_\?:\'\[\]\{\}\#\&\*\!\|\>\`\"\%]')
def write_etag(feed_name, feed_data):
@ -121,12 +121,12 @@ def sanitize_yaml (frontmatter):
#some fields are lists
l = []
for i in v:
i = yamlre.sub('\\"', i)
i = yamlre.sub(r'\\\g<0>', i)
l.append(i)
frontmatter[k] = l
else:
v = yamlre.sub('\\"', v)
v = yamlre.sub(r'\\\g<0>', v)
frontmatter[k] = v
return frontmatter