یک سرور هلند اسپکترا ۲۷ روزه موجوده رم ۴ و ۲ هسته زیر قیمت
دوستان کسی nft username یا گیفت برای خرید خواست پیوی پیام بده.
telegramobjectfield.py
1.1 KB
📦 این فیلد ها مخصوص کتابخونه peewee بوده و شما میتوانید با استفاده از اون اشیا json و یا اشیا telethon رو با استفاده از tlobjectfield یا اشیا aiogram رو با استفاده از telegramobjectfield در دیتابیس ذخیره کنید.
کاملا پردازش ها مثل نوع داده جداگانه خودکار هست و شما فقط کافیه مستقیم ورودی بدید یا مستقیم خروجی بگیریدش
✏️ @av_id
کاملا پردازش ها مثل نوع داده جداگانه خودکار هست و شما فقط کافیه مستقیم ورودی بدید یا مستقیم خروجی بگیریدش
✏️ @av_id
❤3🐳1
🔍 وقتی برای اسکرپ با Inspect سایت کار میکنیم، گاهی نیاز داریم خروجی توابعی مثل fetch رو دیباگ کنیم.
اما مشکل اینجاست که ابزار مستقیم و مشخصی نداریم که بفهمیم این خروجی کجا استفاده شده یا چطور ازش رد شده. 😕
برای حل این موضوع باید این کار رو انجام بدیم:
1️⃣ اول سورس رو در Inspect باز کنیم و اسکریپت مورد نظرمون رو override میکنیم و اگر فایلها Minify یا Build شده بودن، اونها رو Beautify کنیم. اسکریپت مورد نظر منظور بخشیه که کد استفاده شده و یا اگه تابع گلوبال مثل fetch هست اولین اسکریپتی که فراخوانی میشه باید باشه
2️⃣ بعد متغیر یا تابع مورد نظرمون و Proxy کنیم.
3️⃣ با این روش وقتی خروجی داده میشه، میتونیم با اضافه کردن debugger داخل Proxy، دیباگر رو فعال کنیم و توی Call Stack ببینیم که چطوری و کجا از این خروجی استفاده شده. 👀
مثال:
💡 با این روش، کنترل کاملی روی خروجی توابع داریم و میتونیم راحتتر مشکلها رو ردیابی کنیم!
اما مشکل اینجاست که ابزار مستقیم و مشخصی نداریم که بفهمیم این خروجی کجا استفاده شده یا چطور ازش رد شده. 😕
برای حل این موضوع باید این کار رو انجام بدیم:
1️⃣ اول سورس رو در Inspect باز کنیم و اسکریپت مورد نظرمون رو override میکنیم و اگر فایلها Minify یا Build شده بودن، اونها رو Beautify کنیم. اسکریپت مورد نظر منظور بخشیه که کد استفاده شده و یا اگه تابع گلوبال مثل fetch هست اولین اسکریپتی که فراخوانی میشه باید باشه
2️⃣ بعد متغیر یا تابع مورد نظرمون و Proxy کنیم.
3️⃣ با این روش وقتی خروجی داده میشه، میتونیم با اضافه کردن debugger داخل Proxy، دیباگر رو فعال کنیم و توی Call Stack ببینیم که چطوری و کجا از این خروجی استفاده شده. 👀
مثال:
const originalFetch = window.fetch;
window.fetch = function (...args) {
console.log("[fetch]", args[0]);
return originalFetch(...args).then(response => {
const url = response.url || (args[0] && args[0].toString());
if (url.includes("heavyweight")) {
console.log("[Intercepted fetch]", url);
['text', 'json', 'blob', 'arrayBuffer', 'formData'].forEach(method => {
const original = response[method].bind(response);
response[`_${method}`] = original;
response[method] = function (...mArgs) {
console.log(`[${method}()] called on heavyweight URL`);
debugger; // دیباگر اینجا متوقف میشه
return original(...mArgs);
};
});
if (response.body && typeof response.body.getReader === 'function') {
const originalGetReader = response.body.getReader.bind(response.body);
response.body.getReader = function(...readerArgs) {
const reader = originalGetReader(...readerArgs);
console.log("ReadableStream.getReader() called");
const originalRead = reader.read.bind(reader);
reader.read = async function(...readArgs) {
const result = await originalRead(...readArgs);
console.log("ReadableStream chunk read:", result);
debugger; // توقف روی هر chunk خوانده شده
return result;
};
debugger;
return reader;
};
}
}
return response;
});
};
💡 با این روش، کنترل کاملی روی خروجی توابع داریم و میتونیم راحتتر مشکلها رو ردیابی کنیم!
❤5
کانفیگ با لوکیشن اوکراین کسی داره برای دو سه ساعت؟
❤1
This media is not supported in your browser
VIEW IN TELEGRAM
دوستان کدوم شبکه موقع انتقال تتر کمترین fee رو داره؟
Programs must be written for people to read, and only incidentally for machines to execute.
— Hal Abelson and Gerald Sussman
👍1
🔗 ممکنه بخواید node و پکیج های اون رو از windows روی محیط شبیه ساز لینوکسی alias کنید من این کد رو نوشتم و استفاده میکنم شاید بدردتون خورد
🔅 چون شبیه ساز های لینوکسی معمولا از NTFS پشتیبانی نمیکنن با حجم بالای node_modules یا استفاده از inotify مشکل میخورین این کمکتون میکنه
⚠️ بهتره مسیر جاری شبیه سازتون روی مسیر ویندوز باشه (میتونید جدا mount کنید) و از relative path استفاده کنید.
⚠️ به این موضوع هم توجه کنین که NTFS کلا تو مدیریت تعداد بالای فایل از ext4 سرعت کمتری داره ولی باز بهتر از mount کردن هست تو همچین موردی
WIN_NODE_PATH="/mnt/c/cmd/nodejs"
WIN_NPM_GLOBAL_PATH="/mnt/c/Users/avid/AppData/Roaming/npm"
WIN_CMD_PATH="/mnt/c/Windows/System32/cmd.exe"
winnodeinit() {
alias node="$WIN_CMD_PATH /c node"
alias npm="$WIN_CMD_PATH /c npm"
alias npx="$WIN_CMD_PATH /c npx"
export PATH="$PATH:$WIN_NPM_GLOBAL_PATH"
for cmd in "$WIN_NPM_GLOBAL_PATH"/*.cmd; do
if [ -f "$cmd" ]; then
cmd_name=$(basename "$cmd" .cmd)
alias "$cmd_name"="$WIN_CMD_PATH /c $cmd_name"
fi
done
}
winnodeundo() {
unalias node 2>/dev/null
unalias npm 2>/dev/null
unalias npx 2>/dev/null
for cmd in "$WIN_NPM_GLOBAL_PATH"/*.cmd; do
if [ -f "$cmd" ]; then
cmd_name=$(basename "$cmd" .cmd)
unalias "$cmd_name" 2>/dev/null
fi
done
export PATH=$(echo "$PATH" | sed -E "s;:?$WIN_NPM_GLOBAL_PATH;;")
}
🔅 چون شبیه ساز های لینوکسی معمولا از NTFS پشتیبانی نمیکنن با حجم بالای node_modules یا استفاده از inotify مشکل میخورین این کمکتون میکنه
⚠️ بهتره مسیر جاری شبیه سازتون روی مسیر ویندوز باشه (میتونید جدا mount کنید) و از relative path استفاده کنید.
⚠️ به این موضوع هم توجه کنین که NTFS کلا تو مدیریت تعداد بالای فایل از ext4 سرعت کمتری داره ولی باز بهتر از mount کردن هست تو همچین موردی
❤2
📘 یک کتابخانه آموزشی که جبر خطی F2^d برای integers هارو با F2[x]^d جایگزین میکنه و حتی در مواردی مثل md5 hashing محاسبتش میکنه. نمونه ای مناسب برای بررسی کارکرد توابع در سطح بیت به زبان پایتون.
📂 سورس پروژه و مستندات: GitHub – PolyF2
📂 سورس پروژه و مستندات: GitHub – PolyF2
❤1