import json
def on_message(ws, message):
data = json.loads(message)
s = data.get("s")
p = data.get("p")
if p:
_p = float(p)
if _p > 51500:
print(f"Монета {s} больше 51500, текущая цена: {_p}")
else:
print(f"Монета {s} меньше или равна 51500, текущая цена: {_p}")
def sort_pair(a, b):
def sort_pair(pair):
a, b = pair
if a <= b:
return (a, b)
else:
return (b, a)
print(sort_pair((5, 1))) # (1, 5)
print(sort_pair((2, 2))) # (2, 2)
print(sort_pair((7, 8))) # (7, 8)
from typing import Tuple
def sort_pair(pair: Tuple[int, int]) -> Tuple[int, int]:
a, b = pair
if a <= b:
return (a, b)
else:
return (b, a)
print(sort_pair((5, 1))) # (1, 5)
print(sort_pair((2, 2))) # (2, 2)
print(sort_pair((7, 8))) # (7, 8)
SELECT
comment.*,
COALESCE(users.avatarInGames, usersCache.avatarInGames) AS avatarInGames,
COALESCE(users.gameId, usersCache.gameId) AS gameId
FROM comment
LEFT JOIN users ON comment.UID = users.userId
LEFT JOIN usersCache ON comment.UID = usersCache.userId
WHERE comment.status = 1
ORDER BY comment.OID DESC;
Как заблюрить товары на страницах для незарегистрированных пользователей?
// functions.php:
function test() {
if (!is_user_logged_in()) {
wp_add_inline_style('woocommerce-general', '.product {filter: blur(5px)}');
}
}
add_action('wp_enqueue_scripts', 'test');
А также есть вопрос по закрытию доступа к заказу из корзины, если пользователь не авторизован.
// functions.php:
function test() {
if (!is_user_logged_in()) {
wp_redirect(get_permalink(wc_get_page_id('myaccount')));
exit;
}
}
add_action('woocommerce_before_checkout_form', 'test');
Вот сама ошибка(походу что-то я сделал не так и огроомная ошибка поменялась в маленькую):
C:\Users\akrav\Desktop\машынки\main.py:183: RuntimeWarning: coroutine 'get_cards' was never awaited
get_cards(message)
# def new_card(message: types.Message):
# get_cards(message)
async def card_handler(message: types.Message):
await get_cards(message)
position: absolute;
top: 1px;
left: 1px;
right: 1px;
bottom: 1px;
add_action('init', function() {
$limit = 140;
$count_users = count_users();
$total_users = $count_users['total_users'];
if($total_users > $limit) {
update_option('users_can_register', false);
} else {
update_option('users_can_register', true);
}
});
В 2016-м году, делали нечто, что потом начали люди называть SPA - но за счёт аяксов, которые грузят что нужно. При этом сохраняется структура страниц на сервере, и нет и не было проблем с индексацией.
Вот от фронтовых фреймворков верстки - профит заметен был (тот же фаундейшн, бутстрап и тд) - действительно ускоряло и упрощало жизнь.
1. Стильно, модно, молодёжно. Других не могу придумать. Вроде бы как должно работать быстрее, но практика этого не показывает (или настолько незначительно, что конечному пользователю - пофиг, будет работать аякс или вьюшная реактивность).
Собственно, а зачем это всё нужно, если профит, кажется - нулевой
Хочу сделать тематический портал, с авторскими статьями, и разными функциональными разделами.
Основная ценность портала для посетителя - статьи.
Сам делал сайты простые ручками и на вордпрессе, но на портал нет времени заниматься созданием/администрированием, поэтому планирую найти и нанять специалиста разработчика/админа.
На первом этапе планирую сделать минимально работающий продукт - просто портал со регулярно добавляющимися статьями и навигацией. Когда трафик очевидно начнёт расти - планирую добавлять новые функциональные разделы.
2. Какие платформы порекомендуете?
3. Как не прогадать с выбором разработчика/админа?
4. Может есть какие-то толковые книги/курсы по созданию таких проектов. Имею ввиду не столько технические по коду, сколько по организационным этапам и методике того что учесть нужно.
в Pyrogram документации не нашел подобного
import asyncio
from pyrogram import Client
from pyrogram.errors import PyrogramError
class ProxyManager:
def __init__(self, app, max_retries=5, retry_delay=1, proxy=None):
self.app = app
self.max_retries = max_retries
self.retry_delay = retry_delay
self.proxy = proxy
self.client = None
async def connect(self):
for attempt in range(1, self.max_retries + 1):
try:
print(f"Connection attempt #{attempt}")
self.client = Client(**self.app, proxy=self.proxy)
await self.client.start()
print("The connection was established successfully.")
except PyrogramError as e:
print(f"Connection error: {e}")
if attempt == self.max_retries:
print("The maximum number of connection attempts has been reached, stop!")
break
await asyncio.sleep(self.retry_delay)
async def disconnect(self):
if self.client:
await self.client.stop()
print("Connection is closed.")
app = {
'api_id': 'YOUR_API_ID',
'api_hash': 'YOUR_API_HASH',
'session_name': 'your_session_name'
}
proxy = {
'scheme': 'http', # or 'socks5'
'hostname': 'your.proxy.hostname',
'port': 1080,
'username': 'user',
'password': 'password'
}
# test run
async def main():
manager = ProxyManager(app, max_retries=3, retry_delay=2, proxy=proxy)
await manager.connect()
await manager.disconnect()
asyncio.run(main())