Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить.
Есть как минимум два способа это решить правильно!
🔸 Сделать виртуальное окружение и ставить там что угодно.
Это позволит создать полностью независимое исполняемое окружение для ваших приложений.
Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется.
Создать очень просто:
python3 -m venv ~/venvs/myenvname
Теперь активируем окружение
# Linux
source ~/venvs/myenvname/bin/activate
# Windows
%userprofile%\venvs\myenvname\Scripts\activate.bat
Можно ставить любые библиотеки и запускать приложение.
Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа!
🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете.
В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера.
Выполните этот код в консоли:
python3 -m site
Вы получите что-то такое:
sys.path = [
'/home/user',
'/usr/lib/python37.zip',
'/usr/lib/python3.7',
'/usr/lib/python3.7/lib-dynload',
'/home/user/.local/lib/python3.7/site-packages',
...
]
USER_BASE: '/home/user/.local'
USER_SITE: '/home/user/.local/lib/python3.7/site-packages'
ENABLE_USER_SITE: True
Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть.
Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip
pip install --user requests
Для этой команды не нужны root-права.
После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера.
Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE
export PYTHONUSERBASE=~/pylibs
python3 -m site
...
USER_BASE: '/home/user/pylibs'
USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages'
Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!)
🔸 Дописывание пути в PYTHONPATH
Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней.
Сначала ставим библиотеку в любое место указывая путь установки
pip3 install -t ~/mylibs modulename
Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH.
Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров.
Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно.
Минусы такого подхода:
▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте.
▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь.
▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы.
#tricks#basic
Пока в медиа обсуждают недавний трек Егора Крида, он появился ещё и в автомобильной теме
Артист стал лицом кампании РОЛЬФ — там обыгрывают идею "параллельно" на фоне ограничений по ввозу
машин. Суть простая: дилер привозит новые авто по параллельному импорту — от обычных городских моделей до спорткаров.
Из интересного — дают гарантию на два года и дополнительную сервисную поддержку. Узнать все детали, выбрать автомобиль и сделать заказ можно на сайте РОЛЬФ или в мобильном приложении.
Реклама. АО «РОЛЬФ», ИНН 5047254063 Erid:2W5zFHR8Mxd
#advertising
FRANK by БАСТА заколлабился с LA ROUTINE
Ребята запустили совместное меню (смэш и крылышки), а также сделали лимитированную сумку, вдохновлённую эстетикой Парка Юрского периода.
Купить сумку и попробовать меню по адресу Мясницкая, дом 24. Предложение действительно до 17 марта.
#advertising
🌟Join the #1 Crypto News Channel on Telegram:Cryptocurrency ↪ Inside!🌟
Stay ahead with:
- 📰Real-Time Updates: Get the latest news instantly.
- 🔗In-Depth Analytics: Powerful blockchain insights.
- 📅Market Trends: Expert analysis and forecasts.
Join our vibrant community and stay updated with our active Twitter feed. The only news source you need!
🔗 Join now: @Cryptocurrency_Inside
#advertising
🌟Join the #1 Crypto News Channel on Telegram:Cryptocurrency ↪ Inside!🌟
Stay ahead with:
- 📰Real-Time Updates: Get the latest news instantly.
- 🔗In-Depth Analytics: Powerful blockchain insights.
- 📅Market Trends: Expert analysis and forecasts.
Join our vibrant community and stay updated with our active Twitter feed. The only news source you need!
🔗 Join now: @Cryptocurrency_Inside
#advertising
🌟Join the #1 Crypto News Channel on Telegram:Cryptocurrency ↪ Inside!🌟
Stay ahead with:
- 📰Real-Time Updates: Get the latest news instantly.
- 🔗In-Depth Analytics: Powerful blockchain insights.
- 📅Market Trends: Expert analysis and forecasts.
Join our vibrant community and stay updated with our active Twitter feed. The only news source you need!
🔗 Join now: @Cryptocurrency_Inside
#advertising
🌟Join the #1 Crypto News Channel on Telegram:Cryptocurrency ↪ Inside!🌟
Stay ahead with:
- 📰Real-Time Updates: Get the latest news instantly.
- 🔗In-Depth Analytics: Powerful blockchain insights.
- 📅Market Trends: Expert analysis and forecasts.
Join our vibrant community and stay updated with our active Twitter feed. The only news source you need!
🔗 Join now: @Cryptocurrency_Inside
#advertising
🌟Join the #1 Crypto News Channel on Telegram:Cryptocurrency ↪ Inside!🌟
Stay ahead with:
- 📰Real-Time Updates: Get the latest news instantly.
- 🔗In-Depth Analytics: Powerful blockchain insights.
- 📅Market Trends: Expert analysis and forecasts.
Join our vibrant community and stay updated with our active Twitter feed. The only news source you need!
🔗 Join now: @Cryptocurrency_Inside
#advertising
📈Internet Advertising Revenues: Desktop vs. Mobile
Advertising revenues from mobile devices continue to grow faster than the overall market, with mobile increasing its revenue share to 65.1% in 2018.
As consumers continue to shift their viewing behaviour, advertisers have followed them. On a YoY (year-over-year) basis, mobile internet advertising revenues increased 39.7%, increasing its share of total revenues from 56.7% in FY 2017 to 65.1% in FY 2018. Reflecting the industry’s overall growth is a compounded annual growth rate (CAGR) over the past 10 years of 16.8% which over the past few years has been largely driven by the growth of mobile. The rapid growth of the mobile #advertising platform has resulted in a CAGR of 53.8% over the past five years. Mobile revenues continue to benefit from advancements in single-click eCommerce, creative ad formats and placements on social media sites.
🚀@PerspectiveIX via PwC + IAB.
🖼Billboards Are Back!
It’s the era of internet #advertising. The era of targeting that tracks you across browsers, platforms and across the city. The era of apps that know what you want before you do.
But surprisingly, a seemingly retro ad format — outdoor advertising — is also having its heyday.
Ads on billboards, buses and at venues like baseball stadiums are expected to see record spending this year. Worldwide ad spend on so-called “out-of-home” advertising is expected to reach $38 billion this year, up 3 percent since last year and 35 percent since 2010, according to data from ad measurement company Zenith.
🚀@PerspectiveIX via Recode.
💌 Join Pulse Weekly
#Advertising
Brand T Shirts with diffetent design idea, colour and size. masks and huts with especial design.
Mug and plate prints with any photo and text you want.
Student cards, birth certificate and any other documents.
Banner and Stickers with good design idea and consultations.
You can get any thing that related to printings with us.
We deliver to your place any thing you order!
Contact us 📞 0915699608
0934230749
Telegram Channel
https://t.me/joinchat/QhWpbT4jOCBcSLYI
💸Social & Search to Dominate the Global Advertising Market
According to a forecast from Zenith, the global #advertising market is expected to expand by 4.5% this year and then by 4.2% in both 2019 and 2020.
Driving growth will be #SocialMedia advertising, predicted to rise by 16% annually from 2017 through 2020, and search, with a forecast annual growth rate of 8% through that period.
🚀@PerspectiveIX via MarketingCharts.
❓Have you ever done any advertising online?
#global#advertising
Удивился насколько различные рынки интернет-рекламы в США и Китае. При этом структура рынка США это некое прокси на рынок Европы, да и России тоже, так как и там и там преобладает доля классической интернет-рекламы (баннерная и контекстная реклама в поисковиках и сервисах объявлений). Например в США доля классической интернет-рекламы составляет 52% по итогам 2024 г. а в РФ 56%.
В Китае, в отличие от традиционной структуры, когда около 50% приходится на классические форматы, на такой формат приходится мене 10%. Остальная доля распределяется между рекламой на маркетплейсах (retail media) и рекламой в соц.сетях и мессенджерах (social media).
Я пытался понять почему и сначала подумал, что это из-за того что там в структуре населения гораздо больше молодежи, чем в США. Но оказалось, что это не так и доля молодежи в США (14-30 лет) либо такая же либо даже больше, чем в Китае. Объяснение как бы более простое, но я его не понимаю и не знаю как нормально его описать. Но кароче суть в том, что у нас у Европейцев привычка искать инфу в браузере, покупать товары на е-ком площадке, смотреть контент в отдельных приложениях, искать туры, билеты, парикмахера и прочие услуги на различных агрегаторах (а для этого тоже нужно в браузер заходить).
У Китайцев не так. У них с 2010-ых годов мессенджеры и соц.сети развивались с таким уклоном, что в соц сети/мессенджере вы можете и общаться и покупать товары и оплачивать их. Потом к этому добавилась возможность рекламы на маркетплейсах (в целом в РФ это тренд хорошо тоже пошел, доля retail media выросла с 0% в 2020 до 37% по итогам 2025), потом к этому добавилась возможность в видео блолегоров встраивать ссылки на товары на маркетплейсах. В общем в Китае получилось так, что у пользователей все можно найти в 2-3 приложениях, которые объединяют функции просмотра контента, поиска товаров, поиска услуг, платежей и общения. Поэтому рекламодатели в Китае кладут огромный болт на традиционные форматы рекламы в виде браузеров и классифайдов (сервисов объявлений/агрегаторов)
Почему в США Амазон не договорится с Инстаграмом, чтобы блогеры могли вставлять ссылки на товары на Амазоне прямо в видео ролики я не знаю, или почему Вотсап не добавит функцию платежей за товары на Амазоне, которые 1 друг порекомендовал другому другу в их дружеском чате я тоже не знаю. Что мешает этому. Это что-тио на мой взгляд это
1) тупо привычка потребителей совершать конкретные действия в конкретных местах и не понимание как в одном приложении может быть всё, ведь тогда получится просто жесточайший хаос и неразбериха. То есть некое неприятие Китайской модели
2) конкуренция площадок за пользователей и трафик и нежелание, чтобы человек с одной рекламной площадки не уходил на другую, чтобы рекламодатели продолжали тратить деньги и на твою площадку и на чужую тоже.
Кароче хз, много вопросов на самом деле: и как в Китае так получилось и почему на западе так не произошло. Какого-то ответа тут не будет, просто мои мысленные терзания. Возможно кто-то умный напишет в комментарии что-то дельное и аргументированное, возможно я сам приду к ответам позже.