<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Ar.dst</title>
        <link>https://virgool.io/feed/@ar.dst2010</link>
        <description>برنامه نویس html, javascript, css و البته python :)</description>
        <language>fa</language>
        <pubDate>2026-06-17 05:17:09</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/2823324/avatar/Z0HN3x.png?height=120&amp;width=120</url>
            <title>Ar.dst</title>
            <link>https://virgool.io/@ar.dst2010</link>
        </image>

                    <item>
                <title>تیلانچر فقط یک لانچر ساده ماینکرافت نیست!</title>
                <link>https://virgool.io/@ar.dst2010/tlauncher-critical-privacy-issues-dlqiwhyj4iw3</link>
                <description>وبسایت رسمی Tlauncherدر سرچ‌بار مرورگر خود عبارت Minecraft launcher را جسجو میکنید؛ پس از کمی گشتن به وبسایت Tlauncher میرسید؛ همه چیز بنظر مرتب می آید، مانند یک وبسایت معمولی برای یک لانچر معمولی؛ قابلیت خرید شنل دارد، قابلیت حمایت مالی دارد و دانلود آن هم که رایگان است. آن را دانلود میکنید، آنتی ویروس شما آن را کاملا سالم گزارش میکند؛ نصبش میکنید و همه چیز عادی است و به بازی خود ادامه میدهید، اما بعد از مدتی متوجه فعالیت های مشکوکی میشوید...اگر اهل بازی باشید و خیلی اهل پول خرج کردن برای آن نباشید، احتمالا تابحال نام Tlauncher به گوشتان خورده است؛ محبوب ترین لانچر کرکی بازی Minecraft که میتوانید بدون خرج کردن پول و بدون دردسر، پرفروش ترین بازی جهان را بازی کنید. اینکه لانچر های محبوب و متن بازی برای این بازی وجود دارند و اینکه وبسایت رسمی این لانچر، مشخصا راه های تامین مالی قانونی(اگر کپی رایت را در نظر نگیریم) دارد و همچنین اینکه آنتی ویروس شما مانع نصب نشد و حتی یک اخطار هم نداد، شاید شما را به این باور برساند که Tlauncher کاملا امن است، درصورتی که کاربران ردیت، گزارش های بسیاری دادند که این لانچر محبوب اکانت مایکروسافت شما، رمز عبور های ذخیره شده در مرورگر شما و برخی اطلاعات شخصی شما را میدزدد، Backdoor ایجاد میکند، در مقابل حذف شدن مقاومت میکند و حتی با سیستم شما رمز‌ارز استخراج میکند!Tlauncher همیشه لانچر بدی نبود، تا قبل از 2015 Tlauncher بیشتر با اتهامات نقض کپی رایت مواجه بود اما در سالهای 2015 تا 2016 تیم توسعه دهنده بازی عوض شد و کم کم مشکلات امنیتی درمورد این لانچر، گزارش شدند. البته که خود سازنده اصلی از تیم Tlauncher جدا شد و لانچر خود را با نام Legacy launcher منتشر کرد که در مورد آن هم نگرانی های امنیتی وجود دارد.در واقع Tlauncher بر روی خطی خاکستری راه میرود که مرز میان اپلیکیشن عادی و بد افزار است. Tlauncher در حالت اولیه نه بعنوان یک ویروس، بلکه بعنوان یک PUP یا Potentially Unwanted Program یا برنامه بالقوه ناخواسته شناخته میشود. در واقع Tlauncher پس از نصب تا مدتی آرام و معمولی است اما بعد از مدتی شروع به دانلود کردن بدافزار ها و کد های جاسوسی بر روی سیستم کاربر میکند، بنابراین آنتی ویروس ها نمیتوانند آنرا به راحتی تشخیص دهند. همچنین مانع اصلی بر سر پیگیری قانونی این لانچر، نقض کپی رایت است زیرا وقتی یک لانچر غیر قانونی نصب میکنید، باید انتظار چنین مشکلاتی را نیز داشته باشید.Tlauncher در گزارشات مردمی بعنوان یک جاسوس که اطلاعات سیستم، رمز های عبور ذخیره شده در مرورگر، اکانت ماینکرافت و صدا های ظبط شده توسط میکروفون را میدزدد گزارش شده است. همچنین این برنامه بطور بالقوه ای در برابر پاک شدن مقاومت میکند و شما نمیتوانید به سادگی آن را پاک کنید. Tlauncher در رجیستری و فایروال تغییراتی را اعمال میکند. همچنین این برنامه خود را با سطح دسترسی بالا اجرا میکند و یک Scheduled task میسازد که در صورت حذف شدن، دوباره خود را نصب کند!همچنین بنده در بررسی های شخصی متوجه شدم که این برنامه در حالتی خاص، منابع بسیاری از سیستم کاربر را مصرف میکند، مصارف خود را در Task manager مخفی میکند، از AppData در همه User ها اجرا میشود و وقتی که بازی اجرا نیست و در حال آپدیت هم نیست، مقدار زیادی داده به سرور هایی در اروپا میفرستد. و بخش جالب این است که از جاوای مخصوص خودش استفاده میکند زیرا مسیر ها با جاوای رسمی متفاوت اند!سرور هایی که Tlauncher باهایشان ارتباط برقرار میکرداجرا شدن از چند پوشه چند User بصورت همزماندر نهایت پیشنهاد میشود که از لانچر اصلی و قانونی ماینکرافت استفاده کنید اما اگر به هر دلیلی امکان خرید آن را ندارید لااقل از لانچر های امن(یا نسبتا امن) مانند SKLauncher یا گزینه متن بازی مانند Prism launcher و Freesm launcher استفاده کنید یا حداقل اگر از Tlauncher استفاده میکنید، با آگاهی اینکار را انجام دهید.</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Tue, 16 Jun 2026 17:49:37 +0330</pubDate>
            </item>
                    <item>
                <title>کریتوس در مشاغل مختلف(اولین پست از سری :) )</title>
                <link>https://virgool.io/@ar.dst2010/kratos-in-different-jobs-dzpbcxbxsbpk</link>
                <description>خب برای اولین بار از برنامه نویسی فاصله بگیریم و عکس کریتوس در مشاغل مختلف را از دید DALL-E 3 ببینیم.کریتوس آشپز:کریتوس مکانیک:کریتوس راننده تاکسی:کریتوس صندوقدار:کریتوس بنا:کریتوس فوتبالیست:کریتوس کشاورز:خب خب خب خیلی کم بود ولی خیلی سخته که چیزی بنویسی که هوش مصنوعی عکس خوبی در بیاره و عکس بد هم زیاد داشت مثل این که قرار بود بنا باشه:ولی اگر اگر دوست داشتین کامنت بزارین و بگین که برای پارت بعد (اگر که پارت بعدی باشه) از چه مشاغلی استفاده کنم. :)</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Fri, 22 Dec 2023 17:24:04 +0330</pubDate>
            </item>
                    <item>
                <title>ترشی پایتون!!!</title>
                <link>https://virgool.io/@ar.dst2010/py-pickle-kx1xy3bet70p</link>
                <description>-پایتون متغیر a و b رو ترشی کن!!!-کجا بریزمش؟-بریزش تو data.dat--10 روز بعد---پایتون data.dat رو باز  کن ببین چی شده؟؟؟-داخل a نوشته 12 و داخل b نوشته &quot;hello world&quot;پایتون پیکل####-----هشدار:پیکل امن نیست و به هیچ وجه اطلاعات مهمتون رو با تصور امنیت ()pickle.dump اش نکنین بدین دست یکی دیگه----####پیکل یک کتابخونه برای ترشی کردن(ریختن تو یک فایل) یک متغیر, دیکشنری, آرایه یا ... هستش.دوتا تابع اصلی برای پیکل وجود داره یکی dump و یکی load(که البته چون بهم میریخت تو راست به چپ پرانتز هاشون رو نزاشتم اما چون تابعه خودتون با پرانتز فرضش کنید :)خب منطقا اول باید ایمپورتش کنید اگه قراره ازش استفاده کنید:import pickleخب میخوایم یک فایل دیتا بسازیم که برای اینکه یوزر بفهمه این دیتا هست بهتر پسوندش هم dat باشه.a = 23f = open(&quot;data.dat&quot;, &quot;wb&quot;)در خط اول متغیر a رو برابر 23 قرار میدیم و در خط دوم در متغیر f یک فایل رو میریزیم با نام data.dat و مود نوشتن باینری(البته این میتونست rb هم باشه که در اون صورت فقط میشد خوند و اگه هم نبود ارور میداد). اگه فایل هم نباشه خودش میسازه(در مود wb البته).و بعد هم a رو ترشی میکنیم و میریزیمش توی data.dat(که الان توی مموری هست توی متغیر f):pickle.dump(a, f)و بعد هم فایل رو میبندیم که مموری الکی اشغال نشه(البته اگر هم نذاشتین هم بعد از بسته شدن برنامه خودش بسته میشه):f.close()و اگه نگاهی به data.dat بندازین با نوت پد یکسری چرت و پرت میبینید و دلیلش اینه که این یک فایل باینری نه text و اگه اصرار دارید داخل فایل رو ببینید با یک hexeditor این کار رو انجام بدین.و میخوایم بخونیمش:f = open(&quot;data.dat&quot;, &quot;rb&quot;)pickle.load(f)و باید بهتون 23 رو بده. دیدین که من اینجا از rb جای wb استفاده کردم که فقط میتونم بخونم ولی wb هم میشد ولی الکی دسترسی اضافه میگرفت و اگه فایل read only هم بود احتمالا ارور میداد.ولی برای چند متغیر چی؟؟؟ خب میتونین مقدار هاشو بریزین تو یک آرایه یا متغیر هارو بزارین تو یک دیکشنری.خب, خب, خب. این مقدمه ای از pickle بود اما اگر بیشتر میخواین بدونین میتونین به اسناد پیکل نگاهی بندازین.و خب این پست رو با خستگی نوشتم و اگه مشکلی داشت بهم بگین که درستش کنم :)تا خوابم نرفته بگم دیدم ویرگول یکم کد هارو بد نشون نقل قولشون کردم تا درست نمایش داده بشن و اشتباه از من نبوده از ویرگول بوده.</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Tue, 03 Oct 2023 21:08:43 +0330</pubDate>
            </item>
                    <item>
                <title>قربانی فیشینگ نشوید!!!</title>
                <link>https://virgool.io/@ar.dst2010/about-fishing-j9geay62jxpe</link>
                <description>این پست هشداری درباره یکی از روش های هکه که مقدار زیادی از هک های جهان با اون اتفاق میفته.و البته که هک نمیشه اسمش رو گذاشت این یک جور کلاهبرداریه. ولی چون راحت تره تو این پست بهش میگیم هک :)تو اینگلیسی ماهیگیری میشه fishing ولی فیشینگ(ماحیگیری) میشه phishing که تلفظش یکیه و معناش هم خیلی درسته چون قلاب میندازن و اطلاعاتتون رو میگیرن.اگر کسی بیاد و از شما پسورد اینستاگرامتون رو بپرسه آیا بهش میگین؟ قطعا نه!و یک سوال دیگه شما به چه کَس یا چیزی پسوردتون رو میدین؟ به لاگین اینستاگرامولی اگر اون صفحه دقیقا مثل لاگین اینستاگرام باشد و شما نفهمین چی؟؟؟ این دقیقا فیشینگهفیشینگ(که تو فارسی بهش ماحیگیری هم میگن) یکی از ساده ترین روش های هکه که مقدار زیادی از هک های جهان با اون اتفاق میفته. و نقطه قوتش هم اینه که خیلی سادس.اینطوری که یکی برای مثال به شما یک ایمیل میزنه و میگه:و لازم به ذکره که این یک نمونه واقعیه!!!شاید با خود بگین که این دو لینک برای گوگله اما این لینک ها لینک های دیگری هستند که با account.goo... و ... نمایش داده میشوند.(البته فرد دریافت کننده ایمیل بهترین کار رو کرده که روی لینک کلیک نکرده و در عوض ایمیل رو پابلیک کرده).این برای جیمیله ولی اگر اون صفحه پرداخت جعلی باشه چی؟!چطور قربانیش نشیم؟مقابله با این روش کاملا به عقل سلیم خودتون برمیگرده(و البته جدیدا یکم سرویس ایمیلتون).1. بررسی خود ایمیلشما با یک نگاه تقریبا میفهمین که یک ایمیل جعله.خیلی ساده.(ولی البته میتونه با ایمیل هم نباشه).2. بررسی urlبررسی url یکی از ساده ترین کارهاست(دقت کنید که url فیشینگ ها معمولا شبیه url خود سایت ها هستند(مثال اورجینال: instagram.com فیشینگ: instagramm.com)و البته این یک مثاله و واقعی نیست(شاید هم باشه کی میدونه؟)).3. به محتوا کاری نداشته باشید!!!محتوا در اکثر مواقع دقیقا مشابه وبسایت های اورجینال هستند پس محتوا رو بیخیال شید.4. ریپورتش کنیدخیلی از سرویس های ایمیل امکان ریپورت رو دارند.ایران هم احتمالا داره.این روش هایی بود که الان به ذهن من رسید.بی ربط به فیشینگ ولی مرتبط با امنیتیادتون باشه روی لینک های مشکوک کلیک نکنید و فایل های مشکوک هم دانلود نکنید.و البته از فایل های مهمتون هم بکاپ داشته باشد.و کلام آخراین پست رو برای عزیزان یا دوستانتون بفرستید یا درموردش به اونها توضیح بدید.ولی یادتون باشه همینطور که ریچارد استالمن میگه:سه قانون طلایی برای اطمینان از امنیت رایانه: رایانه نداشته باش، به برق وصلش نکن، و ازش استفاده نکن.و اگر کامپیوتر دارین و ازش استفاده میکنین باید خطراتش رو هم به جون بخرین.و من این پست رو خیلی عجله ای نوشتم و اگر ایراد تایپی یا مشکلی دیدید خوشحال میشم بهم بگینش :)و این پست خلاص ای بود از فیشینگ ولی میتونید بیشتر درموردش بدانید.</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Fri, 29 Sep 2023 18:10:28 +0330</pubDate>
            </item>
                    <item>
                <title>آیا وقت مهاجرت از یونیتی فرا رسیده است؟</title>
                <link>https://virgool.io/@ar.dst2010/unity-new-pricing-system-zx27vwsz8yft</link>
                <description>سوختن یونیتی در آتش خودش!!!این یکی از ناراحت کننده ترین اخبار درباره موتور های بازی سازی در هفته گذشته است. و متاسفانه اگر بهترین موتور بازی سازی نباشد یکی از بهترین هایش است. بریم سر اصل مطلبهمینطور که در پایین میبینید یونیتی به تازگی پستی در وبلاگ خودش منتشر کرده که نحوه ی جدید قیمت گذاری که از سال 2024 به بعد از آن استفاده میشود را توضیح داده. در گذشته یونیتی برای بعضی پکیج ها و نسخه های حرفه ای که امکاناتی را به کاربر میدادند (مثل حذف لوگوی یونیتی از اسپلش اسکرین) پول میگرفت و میشه گفت که سیستم درآمدی معقولی هم بود. اما نه تنها سیستم درآمدی قبلی حذف نخواهد شد بلکه یونیتی به دنبال پول بیشتر هم هست.همانطور که در جدول بالا میبینید اگر در 12 ماه گذشته حداقل 200000 دلار درآمد و از اول ساخت بازی تا الان 200000 نصب فعال داشته باشید برای هر نصب در ماه باید حدودا 0.2 سنت که به صورتی میشه یک دلار برای هر 50 نصب بدهید که خیلی زیاده.(البته جدیدا یونیتی یک پست دیگر در وبلاگش منتشر کرده و گفته که باید بازخورد های بیشتریرو در نظر میگرفته و شروع گرفتن پول از 1000000دلار درآمده).برای مثال بازی cuphead که با یونیتی ساخته شده بیشتر از 5 میلیون فروش داشته که اگه حساب کنیم با سیستم درآمدی جدید یونیتی میشه 100000 دلار.ولی خب چه میشه کرد. اگر کامیونیتی زورش برسه بر می گردیم به وضع اول ولی اگه نرسه باید ببینیم چی میشه.و این وسط بیشترین فشار به توسعه دهنده ها میاد(البته بعید میدونم یک توسعه دهنده مستقل بتونه به 1000000 دلار درآمد برسه و معمولا شرکت هایی که اینقدر درآمد دارن یک موتور بازی سازی انحصاری دارند).ولی ممنونم که این پست رو تا آخر خوندید برای همه آرزوی موفقیت میکنم ولی به جز یونیتی(و چند نفر دیگه:):)</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Sun, 24 Sep 2023 18:22:42 +0330</pubDate>
            </item>
                    <item>
                <title>متهم کردن یک برنامه نویس</title>
                <link>https://virgool.io/@ar.dst2010/git-blame-kdnyuxz7aeho</link>
                <description>سلام تو این پست میخواهیم راجب دستور blame در git صحبت کنیم و انتظار میره که یک شناخت کمی از گیت داشته باشید یا اگر هم ندارید بعد از خواندن این پست برین درموردش تحقیق کنین.و البته معنی blame:البته این دستور فقط در ریپاسیتوری های اشتراکی بدرد میخوره مگر اینکه بخواهید خودتون رو متهم کنید(:اگر تو ریپاسیتوری گیتتون(البته اگر با چند نفر روش کار میکنید) یا ریپاسیتوری گیتی که کلونش کردید کد تمیز دیدید یا به چیزی مشکوک شدید یا دیدید کسی جایی از کد رو خراب کرده این دستور اینجا به درد میخوره که اون فرد رو متهم کنید.خب مثل هر دستور گیت دیگه ای باید اول git رو بزنید و بعد دستور رو تا دستور با گیت اجرا بشه(و اول git رو نزنید ارور میگیرید مگر اینکه برنامه ای به اسم blame روی کامپیوترتون که در این صورت اون اجرا میشه).و بعد اسم فایل که در مثال من README.md هستتش.git blame README.mdو خب متهمان تمام خط های فایل رو میگه و میبینید که در خط اول جناب Chris Seickel در تاریخ 2021/12/27 و در ساعت 22:00:21 یک تیتر به نام Neo-tree.nvim به این کد اضافه کرده.خب این برای تمام خط ها بود اما اگر فقط چند خط رو بخواین چی؟با این کد برای خط 3 تا پنج:git blame -L 3,5 README.mdاما اگر تاریخچه یک خط رو بخواین چی؟؟؟git blame -L 3,3 README.mdالبته چون این فایل از اول نوشته شدن تغییری نکرده تاریخچه نداره و فقط یک بار نوشته شدنش رو میگه.خب این خلاصه ای از دستور git blame بود اما اگر میخواهید تا تهش برید میتونید از خود اسناد گیت استفاده کنید یا مستقیم برید سر git blame.</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Thu, 21 Sep 2023 19:17:46 +0330</pubDate>
            </item>
                    <item>
                <title>شروع ساده با html, ساده ترین زبان برنامه نویسی از نظر من</title>
                <link>https://virgool.io/@ar.dst2010/start-with-html-r9szlgbwrdlq</link>
                <description>تو این مطلب به کسایی که با html آشنا نیست چند تا کار ساده با html نشون میدم بلکه خوششون بیاد و شروع کنند.دقت کنید که این یک آموزش نیست و فقط انگیزه ای برای شروع html است.چون نمی خواهم حوصله سر بر باشه بدون هیچ توضیح و تاریخچه ای میریم سر اصل مطلب.برای شروع نیازی به نصب ادیتور هم نیست و میتوانید از ادیتور آنلاین w3 schools استفاده کنیم.(البته اگر کد هارو تکه تکه میبینید مشکل از ویرگوله و فرض کنید که همه ی کد های پشت هم یک قطعه کد هستند).یه نمونه داره که اونو پاکش میکنیم. و Run رو میزنیم تا صفحه خالی شه البته اونقدر مهم نیست.بعد هرچی میخوایین بنویسین چون html اگه نفهمه که چی میگین همونو چاپ میکنه.و چون با unicode کارمیکنه فارسی هم میشه نوشت(البته اگر ascii بود نمیشد).و البته یکم بزرگترش کردم که بهتر ببینید :)حالا بیاین لوگوی گوگل رو هم زیرش نشون بدیم.چون این سرور برای ما نیست و قابلیت آپلود فایل عمومی هم نداره فایلمونه رو از روی سرور های گوگل فراخوانی میکنیم.البته از روی سرور های گوگل هم میشه ولی من لینکشو از wikipedia برداشتم :)لینک عکسه هم اینه https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Google_2015_logo.svg/408px-Google_2015_logo.svg.pngو از این به بعد چون داره کد ها زیاد میشه کد رو مینویسم و فقط عکس خروجی رو میزارم.چرت و پرت
&lt;img src=&amp;quothttps://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg&amp;quot&gt;در واقع در کد بالا یک تگ image داریم که داخلش با src مسیر عکس مشخص شده.و در ضمن اصلا اصولی نیست که متن خالی داخل html بزاریم برای همین من میزارم داخل یک تگ پاراگراف که با &lt;p&gt; باز و با &lt;p/&gt; بسته میشه.&lt;p&gt;چرت و پرت&lt;/p&gt;&lt;img src=&amp;quothttps://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg&amp;quot&gt;و میبینید که مشکل جا های چرت و پرت و لوگوی گوگل هم درست شد.و الان میتونیم یک هدر هم به وب سایتمون اضافه کنیم.هدر ها در html از 1 تا 6 دارن که 1 بزرگترین هدر و 6 کوچیکترین هدره و برای مثال هدر 1 با &lt;h1&gt; و با &lt;h1/&gt; بسته میشه.&lt;h1&gt;سلام این هدر 1 هستش&lt;/h1&gt;&lt;h2&gt;سلام این هدر 2 هستش&lt;/h2&gt;&lt;h3&gt;سلام این هدر 3 هستش&lt;/h3&gt;&lt;h4&gt;سلام این هدر 4 هستش&lt;/h4&gt;&lt;h5&gt;سلام این هدر 5 هستش&lt;/h5&gt;&lt;h6&gt;سلام این هدر 6 هستش&lt;/h6&gt;&lt;p&gt;چرت و پرت&lt;/p&gt;&lt;img src=&amp;quothttps://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg&amp;quot&gt;یکم هم css.در style هم میشه css نوشت و من اینجا رنگ هدر یکم رو طوسی کردم.        یا gray :)&lt;h1 style=&amp;quotcolor: gray&amp;quot&gt;سلام این هدر 1 هستش&lt;/h1&gt;&lt;h2&gt;سلام این هدر 2 هستش&lt;/h2&gt;&lt;h3&gt;سلام این هدر 3 هستش&lt;/h3&gt;&lt;h4&gt;سلام این هدر 4 هستش&lt;/h4&gt;&lt;h5&gt;سلام این هدر 5 هستش&lt;/h5&gt;&lt;h6&gt;سلام این هدر 6 هستش&lt;/h6&gt;&lt;p&gt;چرت و پرت&lt;/p&gt;&lt;img src=&amp;quothttps://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg&amp;quot&gt;و در آخر هم میتونید یک فونت باحال بهش بدید که چون فونتی که من میخواستم جزو فونت های پیشفرض  نبود از گوگل فونت لینکش رو کپی کردم.          (یه راز, اسم فونت هم Handjet هستش:)&lt;link href=&amp;quothttps://fonts.googleapis.com/css2?family=Handjet&amp;display=swap&amp;quot rel=&amp;quotstylesheet&amp;quot&gt;&lt;h1 style=&amp;quotcolor: gray; font-family:Handjet&amp;quot&gt;سلام این هدر 1 هستش&lt;/h1&gt;&lt;h2&gt;سلام این هدر 2 هستش&lt;/h2&gt;&lt;h3&gt;سلام این هدر 3 هستش&lt;/h3&gt;&lt;h4&gt;سلام این هدر 4 هستش&lt;/h4&gt;&lt;h5&gt;سلام این هدر 5 هستش&lt;/h5&gt;&lt;h6&gt;سلام این هدر 6 هستش&lt;/h6&gt;&lt;p&gt;چرت و پرت&lt;/p&gt;&lt;img src=&amp;quothttps://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg&amp;quot&gt;خب امیدوارم که به html کمی علاقه مند تر شده باشید و کمی درموردش تحقیق کنید.(و البته درباره unicode و ascii).و البته فقط کپی و پیست نکرده باشید, واقعا کد ها رو فهمیده باشید.و اگه میخواهید یادش بگیرید یک منبع خوب خود w3schools هست(و چون ویرگول ممکنه حساس بشه بگم که این یک تبلیغ نیست و از هرجای دیگه ای هم میتونین html یاد بگیرین).(ویرگول بدون هیچ دلیلی دو بار این پست رو حذف کرد)البته میشد canvas هم نشون بدیم که مثل یک بوم نقاشی عمل میکنه و میشه توش کارهای گرافیکی کرد اما چون با جاوا اسکریپته یکم سخت میشه برای کسی که حتی html بلد نیست.موفق باشید :)</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Thu, 07 Sep 2023 22:15:04 +0330</pubDate>
            </item>
                    <item>
                <title>تبدیل فایل پایتون به فایل اجرایی(py. به exe.)</title>
                <link>https://virgool.io/@ar.dst2010/py-to-exe-zs65ysrg4i18</link>
                <description>سلام دوستان, درون این مطلب میخواهیم فایل py. رو به یک فایل اجرایی تبدیل کنیم.وقتی میخواهید فایل پایتون تان را برای اجرا به کسی بدهید, حتما باید پایتون را نصب کند اما با این روش میتوانید فایل پایتون را به فایل اجرایی تبدیل کنید.ما دو روش رو آموزش می دهیم که روش اول ساده تر است ولی هر دو روش دقیقا مانند هم هستند با این تفاوت که روش اول درون محیط گرافیکی است.1. روش اول با استفاده از auto-py-to-exeاین روش گرافیکی و تقریبا ساده است.و قسمت جالب این روش این است که دارای زبان فارسی هم هست.1. اول باید با pip, که پکیج منیجر پایتون است auto-py-to-exe را نصب کنیم.pip install auto-py-to-exe2. و بعد باید auto-py-to-exe را اجرا کنیم.auto-py-to-exeو بعد با زدن دکمه ی Browse, می توانید فایل پایتون خود را وارد کنید.در پایین Browse, شما Onefile رو میبینید که زیر آن دو گزینه ی One Directory و One File را مشاهده میکنید که اگر One Directory را انتخاب کنید نرم افزار به عنوان خروجی به شما یک فولدر با چند فایل و یک فایل اجرایی تحویل میدهد که فایل اجرایی درون فولدر, بدون هیچکدام از فایل های کنارش کار نخواهد کرد.ولی در صورتی که One File را انتخاب کنید, یک فایل اجرایی به عنوان خروجی دریافت خواهید کرد و آن فایل اجرایی به تنهایی اجرا خواهد شد.در زیر Onefile, شما Console Window را مشاهده خواهید کرد که در زیر آن دو گزینه ی Console Based و Window Based(hide the console) را می بینید.اگر Console Based را انتخاب کنید موقع اجرا فایل اجرایی یک پنجره متنی برای شما باز میشود و اگر هم یک پنجره گرافیکی در برنامه پایتون خود تنظیم کرده باشید پنجره گرافیکی در کنار پنجره متنی باز خواهد شد.و اگر در برنامه ی خود پنجره ی گرافیکی تنظیم کرده اید می توانید گزینه ی Window Based را انتخاب کنید.در قسمت Additional Files هم اگر قرار است در کنار برنامه شما فایل یا فولدری قرار گیرد می توانید آن را در این قسمت انتخاب کنید.و در قسمت Icon هم می توانید آیکون برنامه تان را انتخاب کنید.در قسمت Setting و Output Directory میتوانید فولدر خروجی برنامه خود را انتخاب کنید.و در پایین پنجره میتوانید در قسمت Current Command کد هایی را مشاهده کنید. چون این برنامه از pyinstaller که در روش دوم توضیح داده شده استفاده میکند و در نهایت کد های pyinstaller را اجرا میکند میتوانید از قسمت Current Command کد ها را مشاهده و ویرایش کنید.و در نهایت روی CONVERT .PY TO .EXE کلیک کنید تا تبدیل به exe شروع شود.در صورتی که بعد از تبدیل Complete را مشاهده کردید یعنی فایل به درستی تبدیل شده است و می توانید با کلیک بر روی OPEN OUTPUT FOLDER به فولدر خروجی بروید و فایل اجرایی را مشاهده کنید.ما خلاصه ای از این روش را خدمت تان گفتیم و اگر میخواهید کامل و جامع در مورد این روش بدانید میتوانید به صفحه گیت هاب auto-py-to-exe مراجعه کنید.که من زبان فارسی هم بهش اضافه کردم و برای مشاهده دستورالعمل های فارسی میتوانید به این لینک مراجعه کنید.2. روش دوم با استفاده از pyinstallerاین روش نسبت به روش اول کمی سخت تر است و در محیط ترمینال اجرا میشود. اول باید با pip ما pyinstaller  رو نصب کنیم.pip install pyinstaller 2. و بعد باید با دستور cd به محل فایل پایتونی مان برویم.cd H:\project_folderبه جای H:\project_folder مسیر پروژه تان را قرار دهید برای مثال H:\project_folder.3. و بعد باید فایل را تبدیل کنیم.pyinstaller my_py.pyکه در این مثال نام فایل پایتون من my_py.py است ولی شما باید این نام را با نام فایل اصلی پایتون خود جایگزین کنید.و بعد از تبدیل می توانید فایل خروجی خود را در فولدر dist و فولدر نام پروژه تا مشاهده کنید(در صورتی که درخواست یک فایل دهید فایل خروجی شما فقط در پوشه ی dist).و شما میتوانید مثل روش اول از تنظیماتی استفاده کنید که من توضیح نمی دهم چون در عکس های روش اول رو به روی گزینه ها مشخص شده.برای مثال جلوی گزینه ی آیکون در روش اول در پرانتز نوشته شده icon-- و اگر شما  این دستور را بزنید.pyinstaller --icon H:\icon\myicon\icon.ico my_py.py و H:\icon\myicon\icon.ico را با مسیر آیکون خود جایگزین(و my_py.py را با نام فایل خود) کنید آیکون خروجی به آیکون مد نظر شما تغییر میکند.یا برای مثال اگر شما این دستور را وارد کنیدpyinstaller --onefile H:\icon\myicon\icon.ico my_py.py فایل اجرایی شما یک فقط فایل خواهد بود.و باز هم اگر شما میخواهید pyinstaller را کامل و جامع بیاموزید می توانید به وب سایت pyinstaller مراجعه کنید.با تشکر.</description>
                <category>Ar.dst</category>
                <author>Ar.dst</author>
                <pubDate>Sun, 27 Aug 2023 12:21:36 +0330</pubDate>
            </item>
            </channel>
</rss>