کریم که نتوانست شطرنج فیزیکی خود را درست کند به اینترنت روی آورده و در این روزهای قرنطینه تصمیم گرفته که با استفاده از اینترنت و فضای آنلاین شطرنج بازی کند. در همان ابتدای استفاده از محیط اینترنت کریم عاشق شمردن تعداد لینکهای صفحهها شده و میخواهد برای صفحه داده شده تعداد لینکها را بشمرد.
هدف ما این است که برنامهای بنویسیم که کار او را راحت کند و با گرفتن یک فایل HTML تعداد لینکهای آن صفحه را محاسبه کند.
ما نیز از شما میخواهیم تابع process را به گونهای تکمیل کنید که با گرفتن آدرس یک فایل HTML، تعداد لینکهای آن فایل HTML را محاسبه کند.
def process(path):
pass
جزئیات
-
برنامهی شما باید شامل یک تابع به نام
processباشد. -
تابع
processبه عنوان ورودی نام فایل HTML مورد نظر را دریافت میکند و تعداد لینکهای این فایل را برمیگرداند (توجه کنید که فایل به صورت لوکال در کنار تستها وجود دارد و شما باید آن راopenکرده و اطلاعاتش را بخوانید). -
لینک به معنای زنجیر است و برای هدایت کردن کاربران از صفحه جاری به صفحهای دیگر استفاده میشود. به این صورت که متن مورد نظر خود را می نویسیم و کاری میکنیم که وقتی کاربران روی آن کلیک کردند به صفحه مورد نظر ما هدایت شوند.
-
برای ایجاد لینک در HTML از تگ
aاستفاده میکنیم به طور مثال:
<a href="https://quera.ir">کلیک کنید</a>
در لینک بالا، عبارتی که برای href در نظر گرفته می شود، همان آدرس صفحهی مقصد است که می خواهیم کاربر پس از کلیک بر روی متن "کلیک کنید" به آن هدایت شود.
- در واقع شما باید تعداد تگهای
aفایل HTML داده شده را محاسبه کنید. - در این سوال میتوانید از کتابخانههای مختلف پایتون استفاده کنید و نام آن کتابخانهها را طبق روشی که در قسمت «نحوه ارسال» آمده بنویسید تا در هنگام کدنویسی بتوانید آنها را
importکرده و از آن استفاده کنید.
نکات
- میتوانید فایل اولیه این سوال را از این لینک دریافت کنید.
- تابع شما نباید مقداری را چاپ کند، بلکه باید مقدار مورد نظر را بازگرداند.
نحوه ارسال
فایل کامل شده solution.py را ارسال کنید؛ همچنین برای استفاده از کتابخانههای مختلف میتوانید همراه فایل ارسالی، فایلی به نام python_requirements.txt در ZIP خود بگذارید که در آن نام کتابخانههای مورد نیاز و شماره نسخهی آنها به فرمت زیر در آن موجود باشد: (اگر شماره نسخه را ننویسید آخرین نسخهی آن کتابخانه نصب میشود)
firstlib==1.2.3
secondlib==4.5.6
...
در نهایت یک فایل ZIP حاوی دو فایل خواسته شده را آپلود کنید.
ارسال پاسخ برای این سؤال