یک برنامه پایتون بنویس که سربرگ YAML (front matter) را از ابتدای یک فایل متنی بین --- استخراج کند، آن را به یک دیکشنری پایتون تبدیل کرده و در قالب JSON ذخیره نماید.
1.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:16 0.0
فایل را با encoding='utf-8' باز کنید، بلوک بین دو خطِ شروع/پایان --- را با استفاده از تقسیم رشته یا یک الگوی regex که شامل re.DOTALL است جدا کنید، سپس از کتابخانه pyyaml (yaml.safe_load) برای تبدیل متن YAML به دیکشنری پایتون استفاده کنید و در نهایت با ماژول json آن را با json.dump در یک فایل ذخیره کنید (قبل از اجرا pip install pyyaml). در پیادهسازی خطاها را کنترل کنید (مثلاً در صورت نبودن front matter) و از yaml.safe_load برای جلوگیری از بارگذاری ناامن استفاده کنید؛ این کار برای مدیریت متادیتا در پروژههای Data Science (مثلاً اطلاعات مجموعه داده) و توسعه وب (مثل پستهای بلاگ با front matter) بسیار مفید است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای استخراج front matter YAML از ابتدای فایل، مطمئن شوید که مقدار با --- آغاز میشود و از یک الگوی مناسب با re.DOTALL استفاده کنید تا بلوک YAML چندخطی بهدرستی جدا شود. سپس با yaml.safe_load آن را به یک دیکشنری پایتون تبدیل کنید و خطاهای احتمالی مانند yaml.YAMLError را با بلوکهای try/except مدیریت کنید. اگر فایلی front matter نداشت، خروجی را به صورت یک دیکشنری خالی یا پیامی مناسب مدیریت کنید تا روند کار پایدار بماند. در نهایت نتیجه را با json.dump به فایلی با encoding='utf-8' ذخیره کنید و از بازشدن امن با utf-8 اطمینان حاصل کنید.
گزارش