❃ Хижина программиста Æ
14.9K subscribers
1.29K photos
94 videos
24 files
2.99K links
Канал для IT Дизайнеров и Программистов, Инженеров и Преподавателей

📡 Ссылка на канал: @hut_programmer_07

⚖️ Фундаментальные знания по основам программирования, философии и этики

💡 По вопросам рекламы: @quadd4rv1n7

Σ 只
Download Telegram
📕 Пишем отложенные сообщения для ВК на питоне

import time
from selenium import webdriver
from selenium.webdriver.common.by import By


dt = [int(i) for i in input("Введите дату отправки в формате mm:dd ").split(":")]
tm = [int(i) for i in input("Введите время отправки в формате hh:mm:ss: ").split(":")]
receivers = input("Вставьте ссылки получателей через запятую без пробелов: ").split(",")
message = input("Введите сообщение: ")

while True:
if (tm[0] == time.localtime().tm_hour and tm[1] == time.localtime().tm_min and tm[2] == time.localtime().tm_sec\
and dt[0] == time.localtime().tm_mon and dt[1] == time.localtime().tm_mday):
urls = ["https://vk.com/?to=c3RpbGxtb3J0YWw-",
"/html/body/div[14]/div/div/div/div[3]/div/div/div[2]/div[1]/div/div/section/div/div/div/div/div/div[2]/div/button[1]/span/span",
"/html/body/div[14]/div/div/div/div[3]/div/div/div[2]/div[1]/div/div/section/div/div/div/div/div/form/div[1]/div[3]/span/div/div[2]/input",
"/html/body/div[14]/div/div/div/div[3]/div/div/div[2]/div[1]/div/div/section/div/div/div/div/div/form/button[1]/span",
"/html/body/div[1]/div/div/div/div/div[1]/div[1]/div/div/div/div/form/div[3]/button/span/span",
"/html/body/div[1]/div/div/div/div/div[2]/div/div[2]/div/div/div/div/div[2]/div[1]/div/div/div[4]/div[2]/div[1]/span",
"/html/body/div[1]/div/div/div/div/div[1]/div[1]/div/div/div/div/form/div[1]/div[3]/div/div/input",
"/html/body/div[1]/div/div/div/div/div[1]/div[1]/div/div/div/div/form/div[2]/button[1]/span",
]

urls_send = ["//*[@id='mail_box_editable']",
"//*[@id='mail_box_send']/span/span"]

friend = "//*[@id='profile_redesigned']/div/div/div/div[2]/div[2]/div[2]/div/div[2]/div/div/div/div[1]/a/span/span"
not_friend = "#profile_redesigned > div > div > div > div.ProfileHeader.ProfileHeader--withSnowballs > div.ProfileHeader__in > div.ProfileHeader__wrapper > div > div.ProfileHeader__actions > div > div > div > div:nth-child(2) > a > span > span > svg"

# entrance
browser = webdriver.Chrome()
browser.maximize_window()

browser.get(urls[0])

time.sleep(5)

search = browser.find_element(By.XPATH, urls[1])
search.click()

time.sleep(5)

search = browser.find_element(By.XPATH, urls[2])
search.send_keys("login")

time.sleep(5)

search = browser.find_element(By.XPATH, urls[3])
search.click()

time.sleep(5)

search = browser.find_element(By.XPATH, urls[4])
search.click()

time.sleep(5)

search = browser.find_element(By.XPATH, urls[5])
search.click()

time.sleep(5)

search = browser.find_element(By.XPATH, urls[6])
search.send_keys("password")

time.sleep(5)

search = browser.find_element(By.XPATH, urls[7])
search.click()

time.sleep(5)

# sending
for receiver in receivers:
browser.get(receiver)

time.sleep(5)

try:
search = browser.find_element(By.CSS_SELECTOR, not_friend)
search.click()
except Exception:
search = browser.find_element(By.XPATH, friend)
search.click()

time.sleep(5)

search = browser.find_element(By.XPATH, urls_send[0])
search.send_keys(message)

time.sleep(5)

search = browser.find_element(By.XPATH, urls_send[1])
search.click()
print(time.localtime())
time.sleep(1)


➡️ Хижина программиста | Оставляйте «бусты» 🌎

Ставьте «
🥰», если пост вам понравился

⌨️ Теги:
#python
#lesson
#аналитика
#quadd4rv1n7
#maximdupley
#maestro7it
#2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Управление памятью в Linux

[ Как работает виртуальная память ]

1️⃣ Сегментация памяти (Memory Segmentation)

Когда приложение запускается, ему выделяется диапазон адресов виртуальной памяти. Эта память разделена на блоки (chunks), называемые страницами. Например, если наше приложение запускается и ему выделен диапазон адресов от 0x0000 до 0xFFFF, а размер страницы равен 0x1000 (значение по умолчанию – 4096 байт), то приложение получает 16 страниц (0x0000–0x0FFF, 0x1000–0x1FFF, …, 0xF000–0xFFFF)

2️⃣ Таблица страниц (Page Tables)

Операционная система сохраняет для каждого процесса структуру данных, которая называется таблицей страниц. Таблица страниц сопоставляет адреса страниц виртуальной памяти с адресами страниц физической памяти. Например, первая страница нашего приложения 0x0000–0x0FFF может быть сопоставлена с физической страницей 0x2000–0x2FFF, вторая страница 0x1000–0x1FFF сопоставлена с физической страницей 0x5000–0x5FFF и так далее

3️⃣ Доступ к памяти (Memory Access)

Когда приложение выполняет запрос на чтение или запись к памяти, ЦПУ использует таблицу страниц для трансляции адреса виртуальной памяти в адрес физической. Например, если наше приложение хочет прочитать адрес виртуальной памяти 0x1500, то происходит запрос ко второй странице виртуальной памяти, которая сопоставляется с физической страницей 0x5000–0x5FFF. Таким образом, ЦПУ нужно прочитать реальный адрес физической памяти 0x5500

4️⃣ Подкачка и запрос страниц (Swapping and Demand Paging)

Если вся физическая память использована, а приложению требуется загрузить новую страницу в нее, то ОС может выбрать страницу физической памяти для сброса-«подкачки» (swap out) на диск. В таблицу страниц вносится пометка, что данная страница отсутствует в физической памяти.

✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️ ✍️✍️ ✍️✍️ ✍️✍️ ✍️ ✍️

✔️ Команда free – это самая простая и понятная в использовании команда для проверки использования памяти в Linux.
$ free -h
total used free shared buff/cache available
Mem: 15G 4.0G 7.8G 276M 3.2G 10G
Swap: 2.0G 0B 2.0G


✔️ Команда top показывает потребление ресурсов в режиме реального времени. Она может отображать сводную информацию о системе, а также список задач, которыми в данный момент управляет ядро Linux.
$ top
top - 13:11:34 up 10 days, 21:54, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 193 total, 1 running, 192 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.6 us, 0.2 sy, 0.0 ni, 99.1 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16223716 total, 7942444 free, 4375632 used, 3961640 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 11412212 avail Mem


✔️ Команда htop похожа на top, но позволяет прокручивать вывод по вертикали и горизонтали, что обеспечивает удобный просмотр всех процессов, запущенных в системе, вместе с полными строками их команд.

✔️ Команда vmstat показывает информацию о процессах, памяти, операциям ввода-вывода, работе диска и ЦПУ
$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 7980008 103292 3814528 0 0 34 30 115 228 4 1 95 0 0


✔️ cat /proc/meminfo
Файл /proc/meminfo хранит статистику об использовании памяти в Linux системах.
$ cat /proc/meminfo
MemTotal: 16223716 kB
MemFree: 7940732 kB
MemAvailable: 11412272 kB
Buffers: 103292 kB
Cached: 2817920 kB
SwapCached: 0 kB
Active: 3200428 kB
Inactive: 2256692 kB


➡️ Хижина программиста | Оставляйте «бусты» 🌎

Ставьте «
🥰», если пост вам понравился

⌨️ Теги:
#команды
#linux
#habr
#аналитика
#quadd4rv1n7
#maximdupley
#maestro7it
#2025
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Программирование — это не только логика, но и искусство. Вы создаёте что-то новое, решаете проблемы и делаете мир лучше.


➡️ Хижина программиста | Оставляйте «бусты» 🌎

Ставьте «
🥰», если пост вам понравился

⌨️ Теги:
#команды
#linux
#windows
#аналитика
#quadd4rv1n7
#maximdupley
#maestro7it
#2025
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
❃ Хижина программиста Æ
Темы Windows. Решаем главную проблему интерфейса системы ➡️ Хижина программиста | Оставляйте «бусты» 🌎 Ставьте «🥰», если пост вам понравился ⌨️ Теги: #windows #linux #habr #interface #интерфейс #аналитика #quadd4rv1n7 #maximdupley #maestro7it #2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
❃ Хижина программиста Æ pinned «✬ ВРЕМЯ ПОКАЖЕТ ✬ ИГОРЬ СЛУЦКИЙ VK Clips 💡 Игорь Слуцкий — российский певец, исполнитель и автор песен, который стал известен благодаря своим произведениям в жанре шансон. Его творчество отличается душевностью и эмоциональной глубиной, а композиции часто…»
Shaman King (RUS)

P.S. Чего-то решил переслушать давний опенинг к одноимённому аниме ...


Взгляни вокруг, оглянись назад,
Духи с тобою связаться хотят,
[А ведь действительно, есть правильные и хорошие духи, которые хотят помочь]

Мир не так прост, каким кажется он,
Чудесами каждый окружен,
[Чудеса из различных сфер и они действительно есть]

Не всё вокруг подвластно глазам,
Сделать свой выбор должен ты сам,
[Не всё человек, может видеть, слышать и осязать, но многое - может чувствовать]

Встреть свою судьбу...
[От судьбы бежать не нужно, а нужно встречать её лицом к лицу]

Быть Шаманом-Королём,
Всех шаманов королём,

Если дух твой силён,
[Интересный пример трактовки учений Конфуция и многих философов того времени]

Быть Шаманом-Королём...

Я вижу мир, я верю в судьбу,
Врагам не сдамся, продолжу борьбу,
[Имеется в виду, врагам не стоит сдаваться, но с опытом понимаешь, что и бороться в половине случаев не следует ...]

Я должен победить...
[В данной трактовке можно заменить должен победить, на могу победить - это в моих силах ...]

Быть Шаманом-Ко-ро-лём


➡️ Хижина программиста | Оставляйте «бусты» 🌎

Ставьте «
🥰», если пост вам понравился

⌨️ Теги:
#шаманкинг
#аниме
#опенинг
#opening
#music
#soundtrack
#anime
#музыка
#аналитика
#quadd4rv1n7
#maximdupley
#maestro7it
#2025
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1