تبدیل عکس رنگی به عکس سیاه و سفید توی پایتون ⌨️
برای اینکه یه عکس رنگی رو به عکس سیاه و سفید تبدیل کنیم، نیاز به pillow داریم؛ پس نصبش میکنیم:
بعد از این کد استفاده کنید:
اینطوری عکس خروجی سیاه و سفید خواهد بود، به همین راحتی 💜
توی پایتون کتابخونه ای به اسم pillow داریم که با استفاده از اون میتونیم با عکس ها کار کنیم. (کتابخونه pillow فورک کتابخونه PIL هست)
برای اینکه یه عکس رنگی رو به عکس سیاه و سفید تبدیل کنیم، نیاز به pillow داریم؛ پس نصبش میکنیم:
pip install -U Pillow
بعد از این کد استفاده کنید:
from PIL import Image
# https://t.iss.one/CodingLovers_OFF
# path of input and output image
rgb_img = 'rgb_image.jpg'
out_img = 'grayscale.jpg'
with Image.open(rgb_img) as img:
# convert image to grayscale and save it
grayscale_img = img.convert('L')
grayscale_img.save(out_img)
اینطوری عکس خروجی سیاه و سفید خواهد بود، به همین راحتی 💜
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🤣5👍2
کدوم کتابخونه برای ساخت ربات بهتره؟
کدوم رو یاد بگیریم؟ با هر کدوم چه کارهایی میشه کرد؟
توی این ویدیو سعی کردم تفاوت کلی کتابخونه های تلگرام رو بگم و سوالاتی که میاد به ذهنتون رو جواب بدم
تماشا بفرمایید:
📱 https://youtu.be/3b0Vf2fV8hs
کدوم رو یاد بگیریم؟ با هر کدوم چه کارهایی میشه کرد؟
توی این ویدیو سعی کردم تفاوت کلی کتابخونه های تلگرام رو بگم و سوالاتی که میاد به ذهنتون رو جواب بدم
تماشا بفرمایید:
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡7❤5👍4
چرا که یه سری از سایت ها میان به رایگان همچین قابلیتی رو اضافه میکنن برای کاربرهاشون و ما میتونیم به راحتی از اونا استفاده کنیم!
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
import time
def get_soup(url="https://gptonline.ai/chatgpt-online/"):
firefox_options = webdriver.FirefoxOptions()
firefox_options.add_argument("--headless")
driver = webdriver.Firefox(options=firefox_options)
url = "https://gptonline.ai/chatgpt-online/"
driver.get(url)
messagebox = driver.find_element(By.CLASS_NAME, "msger-input")
messagebox.send_keys("سلام خوبی؟ یه کد پایتونی بده")
send = driver.find_element(By.CLASS_NAME, "msger-send-btn").click()
time.sleep(5)
text = driver.find_elements(By.CLASS_NAME, "msg-text")[-1]
print(text.text)
if text.text == "":
get_soup(url)
get_soup()
#تیکه_کد
#پایتون
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡4👍4❤3👎1🔥1
آقا چپ و راست نوتیف برام میاد که " آقای x به تلگرام پیوست "، " خانوم y به تلگرام پیوست "
نگو که بخاطر این ربات های همستر و ناتکوین و اینا هست🫠
نگو که بخاطر این ربات های همستر و ناتکوین و اینا هست
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17😁11🤣4
Coding Lovers
چرا ویدیو نمیزارم؟ دارم ادیت ویدیو یاد میگیرم ( خسیس نیستم، ادیتور نیست 🤦♂️ ) و خیلیم سخته ( هر ❤️ پنج دقیقه یادگیری ادیت ) با پایتون نمیشه ویدیو ادیت زد؟
📽 ادیت ویدیو با پایتون !
حتما فکر میکردین این کار غیرممکنه
ولی سخت در اشتباهید 😁
1- اول ماژول moviepy رو با دستور زیر نصب کنید:
2- بعدش میتونید با دستور زیر ماژول رو برای ادیت ویدیو توی کدتون آماده کنید:
حالا اینجا یسری متود براتون میزارم تا بتونید برای ادیت استفاده کنید:
1- با متود زیر ویدیوتون رو وارد کنید:
2- با این متود میتونید از یک تایم تا یک تایم ویدیو رو فقط خروجی بگیرید:
اولین ارگیومنت برای تایم شروع هست و دومی برای تایم پایان
3- با این متود میتونید ویدیوتون رو بچرخونید ! :
آرگیومنت ورودی برای مقدار درجه ی چرخش ویدیو هست
4- نمایش ویدیو:
5- با این کد میتونید وسط ویدیوتون متن بزارید :
اگر مشکلی توی کدتون دارید یا متود های بیشتر رو میخواید میتونید وارد این لینک شید.
برای پایان هم حتما آخر کدتون متود نمایش ویدیو رو بزارید 😉
حتما فکر میکردین این کار غیرممکنه
ولی سخت در اشتباهید 😁
1- اول ماژول moviepy رو با دستور زیر نصب کنید:
pip install moviepy
2- بعدش میتونید با دستور زیر ماژول رو برای ادیت ویدیو توی کدتون آماده کنید:
from moviepy.editor import *
حالا اینجا یسری متود براتون میزارم تا بتونید برای ادیت استفاده کنید:
1- با متود زیر ویدیوتون رو وارد کنید:
clip = VideoFileClip("video address")2- با این متود میتونید از یک تایم تا یک تایم ویدیو رو فقط خروجی بگیرید:
clip = clip.subclip(0, 10)
اولین ارگیومنت برای تایم شروع هست و دومی برای تایم پایان
3- با این متود میتونید ویدیوتون رو بچرخونید ! :
clip = clip.rotate(180)
آرگیومنت ورودی برای مقدار درجه ی چرخش ویدیو هست
4- نمایش ویدیو:
clip.ipython_display(width = 280)
5- با این کد میتونید وسط ویدیوتون متن بزارید :
txt_clip = TextClip("your text", fontsize = 70, color = 'white')
txt_clip = txt_clip.set_pos('center').set_duration(10)
video = CompositeVideoClip([clip, txt_clip]) اگر مشکلی توی کدتون دارید یا متود های بیشتر رو میخواید میتونید وارد این لینک شید.
برای پایان هم حتما آخر کدتون متود نمایش ویدیو رو بزارید 😉
❤12👍7🔥1
برای مثال اگه رباتتون 7000 تا کاربر داشت طبیعتا 10 تا 10 تا فرستادن اطلاعات کاربر ها اصلا روش خوبی نیست
حالا راهکار چیه؟
یکی از راه های باحال استفاده از فایل های اکسل هست! چرا که نه!😊
بریم برای نوشتن تابع تبدیل لیست به فایل اکسل
pip install openpyxl
pip install pandas
import pandas as pd
def list_to_excel(lst,name='output.xlsx',colum=[]):
df = pd.DataFrame(lst,columns=colum)
df.to_excel(name, index=False)
این تابع 3 تا ورودی داره اولی یه لیست هست، دومی اسم فایل خروجی که به صورت پیشفرض output.xlsx هست و در نهایت سومی که همان عنوان های هر ستون هست
برای مثال در اینجا لیستی داریم از کاربر های یک سایت و میخوایم هر عضو از این لیست که هر کدام یه لیسته رو داخل یک ردیف تو فایل اکسل وارد کنیم:
list = [ ["reza" , 20] , [ "zahra" , 20 ] ]
name = "output.xlsx"
colum = [ "name" , "age" ]
list_to_excel(list,name,colum)
#تیکه_کد
#پایتون
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤4👎3🔥2
سلام چطورید دوستان 🙂
یه سوال داشتم
میدونید چرا کتابخونه های تلگرام، اکثر شون async هستن؟
یه سوال داشتم
میدونید چرا کتابخونه های تلگرام، اکثر شون async هستن؟
Please open Telegram to view this post
VIEW IN TELEGRAM
Coding Lovers
سرعت بالا ؟
یجورایی آره ولی چرا سرعتش بالاتره؟
اینو میخوام بدونم
اینو میخوام بدونم
Forwarded from
داش async برای اجرای همزمانه و هر پروسه رو به یه بخشی از سیپیو میده
در اصل چون داره کارها رو تقسیم میکنه بین هسته ها سرعت بالا میره
در اصل چون داره کارها رو تقسیم میکنه بین هسته ها سرعت بالا میره
اینا مگه مولتی پراسسینگ نبود؟
یعنی async == multiproccessing ؟
یه جواب درست کوتاه میخوام 😂
یعنی async == multiproccessing ؟
یه جواب درست کوتاه میخوام 😂
👎3
Forwarded from Farshad
نه نه
ربات تلگرامی و فریم مخصوص این کار باید مرتب به تلگرام ریکوست HTTP یا وبسوکت ارسال کنه و جواب رو دریافت کنه
ممکنه این پروسه تاخیری داشته باشه اما فریمورک باید تا انتهای پروسه منتظر بمونه و SYNC بودن غیر منطقیه تو همچین شرایطی
ربات تلگرامی و فریم مخصوص این کار باید مرتب به تلگرام ریکوست HTTP یا وبسوکت ارسال کنه و جواب رو دریافت کنه
ممکنه این پروسه تاخیری داشته باشه اما فریمورک باید تا انتهای پروسه منتظر بمونه و SYNC بودن غیر منطقیه تو همچین شرایطی
👍5
Coding Lovers
نه نه ربات تلگرامی و فریم مخصوص این کار باید مرتب به تلگرام ریکوست HTTP یا وبسوکت ارسال کنه و جواب رو دریافت کنه ممکنه این پروسه تاخیری داشته باشه اما فریمورک باید تا انتهای پروسه منتظر بمونه و SYNC بودن غیر منطقیه تو همچین شرایطی
ادامه اش بدم یکم؟
وقتی async مینویسیم درخواست هارو به تلگرام میفرسته
اما منتظر جواب نمیمونه و توی اون مهلتی که داره تا جواب برگرده، میره و تسک های دیگه رو انجام میده
وقتی async مینویسیم درخواست هارو به تلگرام میفرسته
اما منتظر جواب نمیمونه و توی اون مهلتی که داره تا جواب برگرده، میره و تسک های دیگه رو انجام میده
👍3
خلاصه اش همینه و خیلی بدرد میخوره
توی ویدیوی امشب کامل تر بهش میپردازیم🤓
البته فقط یه تلگرام مربوط نیست!
هرجایی که پروسه I/O bound باشه بهتون میتونه کمک کنه
توی ویدیوی امشب کامل تر بهش میپردازیم
البته فقط یه تلگرام مربوط نیست!
هرجایی که پروسه I/O bound باشه بهتون میتونه کمک کنه
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤4🔥1
چطور توی پایتون async برنامه بنویسیم؟
نوشتن برنامه به صورت async باعث میشه سرعت برنامتون خیلی بیشتر بشه در خیلی از موارد
توی این ویدیو به طور کامل به این موضوع پرداختیم و یادش گرفتیم😎
از اینجا ببینید:
📱 https://youtu.be/GxaLI1R6waQ
نوشتن برنامه به صورت async باعث میشه سرعت برنامتون خیلی بیشتر بشه در خیلی از موارد
توی این ویدیو به طور کامل به این موضوع پرداختیم و یادش گرفتیم
از اینجا ببینید:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2
سلام، اومدم یه چیزی بگم و برم 👋
امروز داشتم یه برنامه ای مینوشتم که یه سری دیتا رو میفرستاد به یه جایی و دیتایی که داشتم به شکل یه لیست بود که توش هزاران دیکشنری بود
نیاز بود که 100 تا 100 تا دیکشنری هارو از توی لیست بیارم بیرون و بفرستم به مقصد
پس اول اومدم یه همچین چیزی نوشتم
اما مشکل این بود که اگر مثلا 1020 تا آیتم توی اون لیست اولیه داشتم، فقط 1000 تاش میرفت به مقصد و 20 تا باقی میموند
پس اومدم و لیستی که داشتم رو تبدیل به یه لیست از تاپل ها کردم که توی هرتاپل 100 آیتم بود و باقی مونده هاشم توی اخرین تاپل بود که مثلا 20 آیتم توش بود
اینطوری روی هر تاپل فور زدم و دیگه نیاز نبود حساب کنم که 100 تا بشه چون میدونم که همشون 100 تا هستن و تاپل اخر هم باقی مونده شه
البته چون توی تاپل آخر 80 تا آیتم کمتر داریم نسبت به بقیه تاپل ها، متود zip_longest میومد و 80 تا None اضافه میکرد به تاپل آخر
پس یه فور زدم و None هارو هم حذف کردم
نتیجه اش شد فانکشن zip_long که یه لیست میگیره ازتون و تعداد آیتم های هرتاپل رو هم میگیره و نتیجه رو برمیگردونه😉
نمیدونم چرا حس میکنم لقمه رو چرخوندم دور سرم، ولی کارمو راه انداخت
اگه راه بهتری سراغ دارید توی کامنت ها بگید💬 💔
امروز داشتم یه برنامه ای مینوشتم که یه سری دیتا رو میفرستاد به یه جایی و دیتایی که داشتم به شکل یه لیست بود که توش هزاران دیکشنری بود
نیاز بود که 100 تا 100 تا دیکشنری هارو از توی لیست بیارم بیرون و بفرستم به مقصد
پس اول اومدم یه همچین چیزی نوشتم
ids = []
for index, item in enumerate(iterable):
if index % 100 == 0:
ids_string = ','.join(ids)
... # اینجا دیتا رو ارسال کردم به مقصد
ids.clear()
else:
ids.append(item['id'])
اما مشکل این بود که اگر مثلا 1020 تا آیتم توی اون لیست اولیه داشتم، فقط 1000 تاش میرفت به مقصد و 20 تا باقی میموند
پس اومدم و لیستی که داشتم رو تبدیل به یه لیست از تاپل ها کردم که توی هرتاپل 100 آیتم بود و باقی مونده هاشم توی اخرین تاپل بود که مثلا 20 آیتم توش بود
from itertools import zip_longest
def zip_long(iterable: list, count: int = 2) -> list[tuple]:
it = [iter(iterable)] * count
zipped = zip_longest(*it)
result = []
for old_tuple in zipped:
if None in old_tuple:
new_tuple = tuple(item for item in old_tuple if item is not None)
result.append(new_tuple)
else:
result.append(old_tuple)
return result
اینطوری روی هر تاپل فور زدم و دیگه نیاز نبود حساب کنم که 100 تا بشه چون میدونم که همشون 100 تا هستن و تاپل اخر هم باقی مونده شه
البته چون توی تاپل آخر 80 تا آیتم کمتر داریم نسبت به بقیه تاپل ها، متود zip_longest میومد و 80 تا None اضافه میکرد به تاپل آخر
پس یه فور زدم و None هارو هم حذف کردم
نتیجه اش شد فانکشن zip_long که یه لیست میگیره ازتون و تعداد آیتم های هرتاپل رو هم میگیره و نتیجه رو برمیگردونه
نمیدونم چرا حس میکنم لقمه رو چرخوندم دور سرم، ولی کارمو راه انداخت
اگه راه بهتری سراغ دارید توی کامنت ها بگید
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍9👎3🔥1
سلام چطورید 🫡
آقا مینی اپ ها خیلی ترند شدن مخصوصا بعد از ناتکوین و همستر و...
الان خیلی فرصت خوبیه که یادش بگیریم بخاطر حجم زیاد اشخاصی که بهش نیاز دارن
یه ویدیو بریم درموردش؟
آقا مینی اپ ها خیلی ترند شدن مخصوصا بعد از ناتکوین و همستر و...
الان خیلی فرصت خوبیه که یادش بگیریم بخاطر حجم زیاد اشخاصی که بهش نیاز دارن
یه ویدیو بریم درموردش؟
Please open Telegram to view this post
VIEW IN TELEGRAM
👍77❤8🔥8👎5🏆3
عیدتون هم مبارک 🌷
امیدوارم روز خوبی داشته باشید در کنار خانواده😀
آقا روز عید هم باید کد بزنیم، چه وضعشه؟
امیدوارم روز خوبی داشته باشید در کنار خانواده
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍4🗿3👎2
چطور وب اپ شبیه همستر و ناتکوین بسازیم؟ توی این ویدیو یاد گرفتیم وب اپ خودمون رو بسازیم به ساده ترین شکل و با کمترین امکانات :)
📱 از اینجا ببینید:
👍 https://youtu.be/kMcCWIoCphI
Please open Telegram to view this post
VIEW IN TELEGRAM
❤29🏆4🔥3🤩1