Халява с юлы и авито
4 поста
4 поста
Почти всем нам нужен мессенджер на телефоне. Причем такой, чтобы не плясать вокруг него с бубном, то прокси сервер надо искать, то один не работает и другой не работает, то сначала работает, а потом не работает. То ВПH искать, и платить еще за него. Меня такая концепция не устраивала и с стал думать над выходом из сложившейся ситуации.
Макс я ставить не хотел, т.к. активно использую API и мне надо иметь возможность отправки сообщений при помощи http запросов. Шлю себе сообщения из программы на 1с.
Постепенно мои поиски оформились в желание иметь такой мессенджер, который бы работал НА МОЕМ СЕРВЕРЕ. Чтобы послать в одно далекое место все роскомнадзоры с их ограничениями. Так что бы
я был полным хозяином моего собственного мессенджера и мог рулить им как угодно:
- добавлять и удалять пользователей
- отправлять кому угодно и что угодно
- смотреть логи, т.е. кто что и кому слал
- возможность тиражирования
И мои поиски увенчались успехом, я вычитал про мессенджер Rocket chat. Это как раз было то что надо.
Установка и начало работы с Rocket chat
Rocket chat ставится на Ubuntu (бесплатная операционная система!) сервер. Ну или на другие похожие, но мне как-то убунту ближе. Сразу скажу, что все поставить и запустить это очень прямо не просто. Может быть я конечно еще тот ламер, но у меня это почти месяц заняло. Расскажу подробнее.
1. Способ установки. Ставить Rocket chat можно разными способами. Или просто скачать пакет
или ставить его в контейнер docker. Я выбрал сначала первый способ. Причем на момент установки версия Rocket chat уже ушла вперед, а я-то этого не знал! В итоге поставил старую, которая работать у меня отказалась, пришлось все обнулять, думать, и переставлять уже на новую. Причем поначалу у меня ну никак не хотели работать уведомления. Т.е. сообщение приходило, но телефон молчал. Ни настройки андроида, ни настройки самого Rocket chat не помогали. Починить это удалось лишь после обновления Rocket chat на версию 8.8.0.
2. Дополнительное ПО. Rocket chat работает совместно с базой данных MongoDB. И не все версии Rocket chat подходят к разным версиям этой БД. А еще есть обратный прокси сервер Nginx. Он тоже нужен для Rocket chat. Причем тоже не все версии подходят. В общем, я плутал в трех соснах несколько дней, пока в итоге не нашел рабочую связку. У меня заработала отправка сообщений, фото, аудиофайлов.
3. Настройка аудио и видио звонков.
Для этого используется бесплатная программа jitsi. Это сервер видеоконференций. и Rocket chat может работать с ней совместно. Причем в Rocket chat есть такая штука "магазин приложений". Там тьма всяких допов и интеграций. Даже типа шлюза к Whatsapp и Telegramm. Так вот из этого магазина прямо в web интерфейсе Rocket chat и ставится (бесплатно) jitsi. Но тут есть один очень важный нюанс.Если эту самую джитси просто так поставить и даже все настроить, то видеозвонки как бы получаются, но работают они через официальный сервер jitsi а там есть авторизация, приходится при каждом звонке выбирать модератора, всем вводить пароли от google аккаунтов, это все долго, и в итоге это полная хрень. Но есть решение!!! Надо поставить свой jitsi сервер! А уж в моем сервере я все могу настроить как угодно. Или вообще отключить авторизацию (что опасно, т.к. сервер висит в инете, могут найтись желающие нахаляву через него пообщаться) или есть еще возможность настроить Rocket chat так чтобы он сам авторизовался уже на моем сервере jitsi, для чего и там и тут я задаю логины и пароли.
Вот тогда наступает кайф, ты звонишь пользователю Rocket chat, у него раздается звонок и и все,
начинаете разговор. Причем это все реально работает. Отдельная тема, это отправка сообщений в Rocket chat из 1С. Сделать это было точно можно, но информации в инете кот наплакал. Но в итоге, я все-таки написал в коде 1С несколько функций:
- отправка сообщения боту
- отправка сообщения пользователю в личку
- отправка web ссылки
- отправка фото
- отправка документа
Тут тоже возникала просто тьма сложностей. ИИ от гугла хотя мне сильно помог, но ответы на мои вопросы и примеры кода у него немного неправильные ВСЕГДА. Это наверное фишка такая. Всегда после ИИ приходилось все переделывать и дорабатывать. Хотя оснвные идеи он выдает годные. Вся работа идет через HTTP запросы. Для некоторых сложных случаев пришлось запускать сниффер трафика fiddler и ловить что моя 1с передает и что Rocket chat ей отвечает, чтобы понять где у меня затык. Но в итоге все более менее заработало. Также огромную сложность вызвало у меня установка Rocket chat и jitsi на один сервер. Т.к. и то и это хочет отдельный домен. В итоге заработало на разных портах. Rocket chat на 443 https порту, а jitsi на 8443. Так что оба работают уже в контейнерах docker и друг другу не мешают.
Вот что я в итоге поимел:
1. Свой личный мессенджер (по функционалу сравнимый с telegramm)
2. Его точно никто мне не отключит и не заблокирует
3. Клиенты работают где угодно (андроид, айфоны, windows)
4. Можно слать сообщения, файлы, делать видеозвонки
5. Отлично принимает сообщения (в т.ч. и конкретному пользователю) из 1С
Всем привет, рассказываю про мой новый проект. Это воздушный компрессор. Несколько лет назад я уже делал себе миникомпрессор из огнетушителя и компрессора от холодильника. Он до сих пор работает, дома им продуваю всякие компьютерные комплектующие, платы, корпуса и т.п. Работает отлично, но у компрессора от холодильника очень маленькая производительность (хотя есть и плюс - работает тихо без вибраций). Долгое время я искал новый компрессор для создания чего-то более производительного. Мечтаю о пескоструе. На авито были варианты двух или трех головых поршневых компрессоров, но или дорого, или доставка нужна и неизвестно в каком состоянии придет товар. В общем я периодически искал, но ничего не подворачивалось, и вот зимой я наконец-то нашел! Это было на удельной (блошиный рынок в СПб). Есть там зоны, где торгуют исключительно иностранные специалисты. И нашел там этот компрессор. Он был в таком состоянии что даже трогать его было страшно, грязнущий, в масле ужас просто. Да еще и тяжеленный, купил я его за 1000 вроде, или 900 руб. как-то так, немного поторговался. В гараже начал хотя бы как-то приводить в порядок - мыл в бензине. Отмыл, покрутил колесо руками, оказалось одна голова работает, вторая - по нулям, воздух не идет. Оказалось там треснула металлическая пластинка - клапан. На озоне нашел новые пластинки, воздушные впускные фильтры, трубу которая соединяет головы в радиаторе, уголок и тройник. В общем в итоге обе головы начали дуть и я стал планировать собрать на станине какой-то констуктив, чтобы мотор крутил колесо компрессора. Моторы у меня всякие были, я выбрал как говорится лучший из худших. Мне было важно чтобы мотор мог работать и от 1 и от 3 фаз, и чтобы на нем был шкив. Шкив был у меня алюминиевый, но у него была узкая посадка и он не налезал на вал двигателя, там все было подготовлено под стандартный точильный круг. Я подумал что собственно у меня же есть личный токарный станок (полученный бесплатно, уже писал об этом). Я поставил в патрон обратные кулачки, зажал шкив и сумел расширить в нем дырку. Снимал по чуть чуть пока шкив туго не налез на вал. Ремень я нашел в сарае, у меня там есть такой специальный гвоздь, на который я вешаю все ремни которые мне попадаются. Гаражи покупаю, там этого добра дофига автолюбители оставляют. В общем клиновидный ремень я нашел и даже не один, что вроде влезал в мой свежерасширенный шкив и в шкив компрессора. Из старых профтруб (тоже отдавал кто-то) вырезал и сварил основание сложной геометрии, так чтобы и мотор и компрессорная голова нормально были зафиксированы. Зашлифовал сварные швы. Разметил по 4 отверстия и расточил их одну четверку по горизонтали, вторую по вертикали, чтобы можно было и шкивы выставить в одной плоскости и натяг ремня обеспечить. Нашел болты, почти все одинаковые, шайбы, гайки и все прикрутил. Пошел искать конденсатор. Сначала хотел запустить от 220 одной фазы. По моим прикидкам конденсатор нужен был где-то на 50...70 мкф. Но такой не нашел :-( нашел целую кучу на 1...4 мкф. Попробовал их паралельно соединить, также в паралель припаял резюк на 100 кОм, чтобы кондеры разряжались через него. Общая емкость вышла наверное 10...15 мкф. Обмотки включил треугольником. На холостую мотор запускался, а вот с компрессом не мог :-( Печалька, подумал я, пошел искать дальше. В итоге нашел крутейший кондер на 100 мкф и 1000 в. Здоровый правда, я его покупал лет 20 назад, когда строил свой первый лифт, но там такая была нагрузка, что с моим весом через редуктор и этот кондер не помог. Но тут он помог! Компрессор завертелся как угорелый, воздух пошел. Это конец первой части, дальше надо будет готовить ресивер, ручку, колеса, автоматику. Все это уже куплено или найдено, осталось только собрать и сварить что где надо./
Некоторое время назад, я получил на авито очень неплохую отдачу - кучу серверов, лезвия от блейд сервера, дисковые полки, рельсы и т.п. Все за НОЛЬ рублей, бесплатно. Сервера очень даже неплохие стоечные высотой 1U двухпроцессорные на сокете 1366. Полный фарш: блоки питания резервируемые с горячей заменой, SAS диски 2.5 формфактора, память ECC регистровая. В общем нехилая отдача была.
Но из всего этого железа меня больше всего заинтересовали лезвия от blade сервера. Я решил попробовать его дособрать. Первым делом нужна была корзина. Это такой огромный корпус стоечный высотой наверное 8 или 10 юнитов, куда втыкается до 14 лезвий (т.е. до 14 серваков!), 4 блока питания каждый мощностью по 2300 ВТ!!! Это просто дохрена. Платы для работы сети, для подключения монитора и устройств ввода, и два вентилятора. Последние так дуют, что даже страшно становится. Как ракетная система Энергия - Буран на взлете. В общем я докупил все что мне не хватало и блейд система заработала. А надо сказать, эти системы это одно из САМЫХ ОТКАЗОУСТОЙЧИВЫХ серверных решений. Т.к. там резервировано все: сами сервера, блоки питания, сеть, KVM модули, охлаждение. И всю эту байду я выставил на авито.
Вот тут и начинается история. Все вы знаете что в банковсих делах щас творится полная жо..а. Транзакции не проходят, банкоматы не работают, по карте нифига не оплатить и т.д. Так вот! Мне сегодня звонок по объявлению. Пересказываю историю. Звонят из Москвы. Оказывается причиной всех этих дел явился один такой же блейд сервер как у меня. А точнее единственный установленный в нем модуль KVM. Он сдох, блейд сервер тоже перестал отвечать и за ним по цепочке произошла вся эта хрень. В общем тамошние айтишники стали утром в субботу со всей дури искать такой KVM модуль. И нигде его не купить. А у меня купить. Не буду называть сумму, которую они мне предложили. Только сумма эта меня вполне устроила, я бросил все дела, вскочил в машину и по газам. Примчался на дачу, меня уже ждали. Мы бегом практически на 3 этаж, где сервак стоял, все проверили, как работает, парт номера, все ОК. В общем мужик бегом в машину и помчался чинить банковский процессинг. Надеюсь починит.
Получением халявы сначала с юлы, потом с авито я начал интересоваться лет 5 назад. Поначалу я застал времена, когда даже номер телефона я реально вытаскивал с авито, потом это уже стало невозможно. Но если это сталоневозможно мне, то стало невозможно и моим конкурентам. Так что не все так старшно. За эти годы я получил много всякого, чтобы вы не думали, что бесплатно отдают всякую хрень (а ее конечно тоже отдают). Например:
"фурнитуру" от убитых ботинок - грязные шнурки и крючки для их продевания
втулки от туалетной бумаги
картон, обрезки тряпок
приведу несколько наиболее интересных отдач:
2 бытовки с самовывозом
2 токарных станка (1И611П и настольный самодельный)
лазерный станок (поле 40 на 40 см, лазер 50 Вт) с чиллером (это холодильник на 5 КВт для охлаждения лазера)
стройматериалы (фанера и осб (десятки листов), железо, строительные леса)
фуговальный станок с циркуляркой диаметром 40 см - страшная штука
газовые баллоны разные
кондиционеры и отдельно внешние блоки от них
печь-камин на дровах "Бавария 3 стекла"
кассеты от банкоматов, где хранится наличка. Из них получаются отличные системы хранения инструментов, деталей и всяких мелочей
промышленные холодильники со стеклянной дверью, морозильные камеры
компьютеры вплоть до iMac 24"
Но постепенно задача поиска нужных мне объявлений в интересных категориях усложнялась. Т.к. авито целенаправленно усложняет алгоритмы запросов к их сайту. Заставляет переходить на платные услуги.
Можно платить и просто иметь api для доступа даже не к сайту, а к их базе, откуда гораздо проще делать запросы и обрабатывать результаты.
Сначала все было просто. Я имитировал post и get запросы которые делал браузер при поиске объявлений. Отлавливал куки, ключи всякие чтобы авито принимало меня и мои запросы как родные ;-) Но постепенно эта лавочка закрылась. Стал получать ответы, типа каптчу решите, или ваш IP заблокирован, в общем может один запрос из 10 проходил.
Я начал искать новые пути, установил питон и там использовал хромиум который маскируясь под реальный браузер получал содержимое страницы со списком интересующих меня объявлений. Но и этот метод вскоре перестал работать надежно. Почитав инеты, я узнал что есть всякие "невидимые" хромиумы, которые наиболее полно прикидываются реальным браузером и авито не ругается на запрос через них, но и это решение не давало нормального результата, хотя если просто запустить браузер, то все было нормально - авито выдавало список объявлений на мой запрос. Т.е. вывод напрашивался один - хочешь иметь доступ к списку объявлений - пользуйся обычным браузером.
Так я и решил поступить. Задача была следующая: написать программу, которая:
запускала нужный мне браузер
открывала в нем нужную ссылку (типа найти на авито бесплатную бытовую технику)
дождаться пока страница загрузится
сохранить страницу в файл
дождаться пока страница полностью сохранится
закрыть браузер
Первые 2 пункта решаются легко. Я делаю так: создал ini файл, в котором, в числе прочего, прописан путь к браузеру.
-----------------------------------------------------------------------
[settings]
;Application = "C:\Program Files\Mozilla Firefox\firefox.exe"
Application = "C:\Program Files\Google\Chrome\Application\chrome.exe"
-----------------------------------------------------------------------
Для запуска программы использую командную строку, аргументом передаю ссылку.
-----------------------------------------------------------------------
wcscpy(strLink, argv[1]);
GetPrivateProfileString(L"settings", L"Application", L"", strApp, 320, pbuf);
wcscat(strApp, L" ");
wcscat(strApp, strLink);
// Запускаем процесс
CreateProcessW(NULL, strApp, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
-----------------------------------------------------------------------
Первое что делает программа (я назвал ее sendkey) это создает строку запуска браузера из пути к браузеру и открываемой ссылки. В итоге я вижу браузер с результатом моего запроса. Осталось самое главное - программно сохранить эту страницу в файл. К сожалению ни у хрома, ни у мозиллы нет никаких аргументов запуска чтобы они там что-то сами сохранили, хотя это было бы конечно офигенно удобно. Ну что ж, придется выкручиваться самому. Я знаю, что если нажать сочетание клавиш "ctrl+S" то появляется окно сохранения открытой страницы.
-----------------------------------------------------------------------
// имитировать нажатие клавиш CTRL+S
PrintDebugInfo("Begin press CTRL+S!");
keybd_event(VK_CONTROL, 0, 0, 0);
Sleep(100);
keybd_event(83, 0, 0, 0);
Sleep(100);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
Sleep(100);
PrintDebugInfo("End press CTRL+S!");
Sleep(iWaitSecAfterCtrlS * 1000);
-----------------------------------------------------------------------
Далее вводим имя файла и жмем кнопку "Сохранить". Но это все надо сделать программно! В этом-то и есть вся загвоздка. Я начал с того, что запустил программу "spy++" это из поставки visual c++ такая утилита, которя ловит сообщения разных окон когда что-то в этих окнах происходит, например, мы тыкаем или водим мышью или нажимаем всякие кнопки. Так я и подглядел что там происходит на уровне сообщений windows когда я просто руками сохраняю страницу. Осталось эту последовательность симитировать из моей программы. Сразу скажу, это было очень непросто. Если просто так захотеть послать все сообщения, возникат куча вопросов:
кому посылать? надо сначала программно найти сначала оконо браузера, потом окно диалога сохранения, потом кнопку "Сохранить"
задержки это просто беда, браузеры штуки не очень быстрые. То быстро страница грузится, то медленно, то вообще не грузится
в браузерах постоянно выскакивают всякие левые окна. То предложат что-то, то скажут что закрыли аварийно и давайте восстановим ранее открытые страницы?
в разных браузерах много чего отличается, например заголовок окна сохранения страницы. Это тоже надо учитывать.
файл который я сохраняю (точнее старую версию) сначала надо удалить, иначе опять лишние вопросы типа "файл существует, что делать будем?"
обязательно надо выбирать тип сохраняемого файла. Мне же картники и всякие сценарии из него не нужны, надо выбрать "только html"
Повторяю - все это делать программно. Т.е. от запуска браузера до его закрытия происходит туча операций. Есть еще одна очень неприятная хрень. Предположим, в окне сохранения я хочу задать (программно конечно) имя файла. Я нашел именно этот EDIT CONTROL и посылаю ему соответствующее сообщение (WM_SETTEXT) и да, все круто! Мое имя файла встает куда надо. Потом программно нажимаю кнопку "сохранить" и тут страшный облом - хотя имя файла на экране мое, но браузер сохраняет файл со старыми именем! Т.е. если я руками имя ввожу, все ОК, а если программно меняю, где-то там внутри в потрохах хрома да и мозиллы тоже остается старое имя. Я с этим убился просто бороться, но в итоге победил. А чего стоило установка типа файла. Полдня промучился. Дело в том, что если задать нужный формат и успешно сохранить, то выбор типа файла запоминается. Но иногда бывает слетает. И хром начинает тормозить, сохраняя десятки мегабайт всякой хрени, естественно дальнейшая работа встает. Но и эту проблему я решил. Теперь программа запускается так:
getpage.bat "www.avito.ru/sankt_peterburg_i_lo/garazhi_i_mashinome..."
где getpage.bat это вспомогательный файл он прибивает возможно зависшие экземпляры браузеров, удаляет старые версии сохраненных страниц, еще хотел в него еще добавить переключение вывода на дополнительный монитор, потом передумал. На выходе имеем html файл со списком объявлений, дальше с ним разбирается моя программа на 1С. Она разбивает файл на отдельные объявления, для кажого определяет ID, название, текст, цену, местоположение и прочее. Потом, по результатм делает рассылку в телеграмм. Проверяя на то что в объявлении нет слов из черного списка, попадает в интервал цен и ранее не было отослано.
Как показала практика, мой метод парсинга нормально работает неделями подряд и не вызывает появления капчи. Но меня не устраивала общая скорость работы. У меня же не один запрос. Их около десятка:
бытовая техника
комплектующие для компьютера
просто компьютеры
телефоны
для дома и дачи
ремонт и строительство
оборудование для бизнеса
инструменты
аудио/видео техника
и т.д. Если все эти запросы крутить на одном компе, то частота каждого сильно уменьшается. Может это будет раз в 10...15 минут. Очень медленно, часто за секунды что-то ценное уходит, а тут 10 минут! Надо было что-то придумать. Я понимал что неплохо бы создать целую кучу компов и распределить запросы между ними. Но эта куча должна же где-то стоять, шуметь, жрать электроэнергию, да еще следить надо за всем этим. В итоге, я собрал себе сервер и решил создать на нем кучу виртуальных машин. Я купил корпус огромный десктопный супермикро причем с лицензионной наклейкой, т.е. лицензию получил практически даром. В корпус поставил материнку тоже супермикро двухпроцессорную на сокетах 2011. Не люблю всякие хунаны и прочую галимую китайчатину. Всего у меня 24 ядра (48 потоков), 128 гигов оперативки модулями по 32 гига, SAS диски на аппаратном raid контроллере. 2 диска SAS твердотельных и два SAS обычных для хранения виртуальных машин. В общем, работает такой сервер очень неплохо, шумит только и греет воздух, поэтому собираюсь перевезти его на дачу, там делаю себе волокно и фиксированный IP адрес. Бесперебойник есть APC на 2.2 Квт, места полно. Пусть гараж отапливает в процессе работы.
Теперь об организации парсинга. Сначала я решил сделать одну образцовую виртуальную машину (далее ВМ) и потом ее тиражировать. На каждой ВМ ставил sendkey, 1C и конфу. На каждой ВМ настроенную на определенный запрос. Но быстро понял что так никакой скорости не напасешься, 1С работала не очень быстро. Просто запуск длился до 30 секунд, я хотел чтобы все было намного быстрее. Тогда мне пришла в голову такая мысль: а что если база 1С будет одна, а в ней разные пользователи. Каждому будет соответствовать свой запрос. База будет крутиться на SQL сервере на самом главном сервере, а на виртуалках будут тонкие клиенты. И еще браузеры. Т.е. софта всего - ничего. Виртуалки запускаются автоматически при запуске главного сервера, в них через автозагрузку запускается моя конфигурация 1С, и она уже начинает крутить свой запрос. И так все виртуальные машины. Сначала погонял одну ВМ, потом две, сегодня 4 штуки. Стали вылезать кое-какие проблемы. Типа места на диске перестало хватать, но я все лишнее потер, 20 гигов дискового пространства хватает. Для нормальной работы воткнул в сервер usb шный ключ защиты от 1с (купил его на юноне :-))) как дохлую флешку за недорого), поставил драйвера, зато теперь у меня лицензионная 1С! На эту тему еще вспомнилось. Как-то раз в Шушарах отдавали целую гору компьютерного барахла, поехал с прицепом. Барахла было столько что в прицеп не влезло, частично загрузил машину, но все вывез: системные блоки, МФУ, бесперебойники, клавы, мыши, какие-то на первый взгляд непонятные штуки. Потом в гараже, при разборе, я нашел в одном компе тоже ключ защиты. Как оказалось это страшно дорогая хрень - ключ для программы автоматизации автозаправочной станции (управление топливными колонками, расчеты, учет прихода/расхода топлива и т.д.). Такая прога стоит реально сотни тысяч. Я смог продать ключ за 12000.
Паралельно я занимаюсь реализацией полученного даром. Особенно мне нравится продавать газовые плиты. Они круты тем что:
не очень тяжелые, я один на телеге спокойно спускаю газовую плиту с 5 этажа без лифта
занимают не очень много места (на крайняк, складирую их в 2 этажа если у нижней железная крышка)
легко чинятся. В основном все проблемы это: прочистить форсунки, прочистить расворителем или бензином краны и кнопки электроподжига
иногда что-то отваливается типа крышки, все чистится и клеится силиконовым герметиком
не нужна вода (и положительная температура!) для демонстрации работы
потенциальному покупателю могу показать плиту в работе (все конфорки и духовку). Вам даже в магазине никто и никогда плиту не включит и не покажет
если мне везет, то вместе с плитой отдают ее паспорт - это увеличивает стоимость плиты примерно в 2 раза!
на прицепе могу перевезти за раз 6 плит + 2 в машине, если сложить заднее сиденье
если плита совсем в паршивом состоянии, то разбираю ее на запчасти: конфорки, форсунки, ручки, кнопки, провода, свечи электроподжига и т.д. Оставшееся железо идет на сдачу.
плиты нужны почти всем. Если ее нормально отмыть, легко продается за несколько дней.
За несколько лет такого бизнеса (продажа техники и прочего полученного бесплатно) и выручка от клиентов которым я делаю рассылки по их запросам, есть выгодные приобретения. Вначале я купил гараж в пригороде СПб всего за 65000 руб.
Сам гараж деревянный, но обшит железными листами. Ворота были в убитом состоянии, провисли, низы гнилые, но каким-то чудом я бесплатно получил гаражные железные ворота. Очень тяжелые, еле смог увезти на прицепе. В них была калитка, замки, изнутри пеноплекс и вагонка. Также в комплекте были боковые части коробки с петлями. За 15000 руб я нанял каких-то мастеров и мне эти ворота приделали к гаражу. И они даже по размеру подошли!!! Старые ворота отдал мастерам. В гараже провел косметический ремонт, перекрасил ворота, подлатал крышу. Сам забетонировал подъезд. Гараж сразу же сдал в аренду. Не помню точно, но вроде первому арендатору за 5500 в мес, потом ко мне заехал новый и стал платить больше и сразу за год вперед. С первой же оплаты гараж окупился. В общем каждые полгода я теперь покупаю по гаражу с доходов от моего бизнеса, и сразу же сдаю в аренду. Новые гаражи начинают помогать окупать ранее приобретенные.
Казалось бы хорошая идея поставить сервер в гараж, но там на ночь отрубают электричество, а бывает и днем, если в гараже есть счетчик, то цена квт*ч побольше чем в городе, так что идея не очень.
Сейчас мне и гаражи новые программа помогает искать. До этого упустил пару очень вкусных предложений, локти кусал. Теперь я вижу каждый попадающий в мои параметры гараж не позже чем через 2...3 минуты после появления объявления на авито. Как только вижу что это мне подходит, моментально созваниваюсь. А ведь так и машины и недвижимость можно искать.
Продолжаю рассказывать о новых отдачах. Всякую фигню типа газовых плит не буду даже упоминать расскажу только о действительно интересных отдачах.
Все что буду описывать отдавали бесплатно. Совсем бесплатно, только надо было приехать и самовывезти. Желающих на эти отдачи было не то что много, их было просто офигенно много. Но каким-то чудом (спасибо авито за то что глушит моих конкурентов) я был первым.
Первая отдача это очередной станок. В моем станочном парке уже есть 2 токарных станка, станок для лазерной резки. Эти все получены бесплатно. Еще есть сверлильный станок СССР вроде НС-12 называется, его я купил за 5000 но тоже при помощи моей программы. т.к. за 5000 станки такого типа разбирают моментально. И еще есть отрезной станок по металлу, его я спас в приемке металла. Буквально вытащил из кучи лома, заплатил за него своим ломом (т.е. фактически получил бесплатно) и поставил двигатель от промышленной швейной машины, который тоже получил бесплатно.
Так вот новый станок был фуговальный + дисковая пила. Станок был самодельный и стоял в полудырявом сарае. Было это в пригороде СПб в Белоострове. Станина деревянная, все низы гнилые. Пока я пытался хоть как-то пошевелить станком низ отпал :-) вместе с мотором. А мотор там на 3 КВт. Т.е. нехилый такой. Благодаря такой расстыковке я смог в одиночку по частям дотащить станок и мотор до прицепа. И с большим трудом их туда запихнуть.
Мотор и сам вал с ножами в нормальном состоянии, все крутится, ничего не заедает. Мотор конечно трехфазный и это хорошо, 3 фазы у меня на даче есть. Верх станка, т.е. рабочие столы там в нормальном состоянии, они покрыты листовым металлом и там все ок, ножи вероятно выствлены как надо (но это я еще проверю), надо только сварить для станка раму а гнилые низы отрезать. Передача от мотора ременная, сам ремень в комплекте, т.е. нужна будет система натяжки ремня. 3 КВт это не шутки, на авито такие фуговальные станки от 750 Вт до 1.5 КВт. Так что мой их еще по мощности может уделать.
Погрузив станок и мотор на прицеп, я потихоньку поехал в Сестрорецк на обед в КФЦ ;-) А уже потом восстановив силы выдвинулся на дамбу и по ней через Крнодштадт на дачу. Но не было места для разгрузки станка. Весь гараж был забит стиральными машинами. Пришлось сначала устроить массовую разборку этого барахла. Самое для меня ценное в стиралках - это коса проводов. Они там длинные, толстые и разноцветные. Я первым делом вытаскиваю косу (а снимается она легко, все же на разъемах) и откладывается в сторону. В дальнейшем эти косы я разбираю на провода, откусываю концы, чищу снаружи спиртом и сортирую по цветам. Применяю в системах управления бильярдными залами (это моя халтурка) делаю компы со встроенными силовыми ключами + программа тарификации, написанная на 1с и вот такие силовые провода уж очень там в масть для вывода линий освещения бильярдных столов.
В общем, я снял все что легко снимается с 5ти машин, плюнул и пустил на металл стеклокерамическую плиту и пару посудомоек. Предварительно вынув всю цветнину. Станок это более ценный актив. Подогнал прицеп и потихоньку сгрузил прицеп и всю сопутку. В гараже тепло и сухо, пусть пока отлежится, позже буду его разбирать и срезать гнилье. Материал для новой станины у меня есть классный. Отдавали балконные ограждения. Резал помню их болгаркой там профтрубы с толшиной стенки наверное милиметра 4!
Вторая история произошла 8 ноября. Накануне 7 ноября я увидел объявление об отдаче сервера и на автомате связался с продавцом и договорился о том чтобы его забрать. Отдавали в Пушкине. По факту же оказалось совсем другие масштабы. Это была, как мне кажется, отдача по своим масштабам сопоставимая с отдачей токарного станка 1И611П.
Мужик в элитном малоэтажном котеджном поселке отдавал:
- 5 одноюнитовых серверов. Все исправные, по виду как новые. Все IBM. Один я на пробу
включил. Там стоят 2 проца на сокет 1366, память конечно регистровая ECC DDR3, SAS диски. Два резервированных блока питания (в некоторых стоит только один). Всё вообще без пыли как из магазина. Минус то что память там модулями по 2 или 4 Gb а диски на 146 Gb. Да и процы слабые. Но это все легко модернизируется. Если купить на али модули по 16 гигов, процы на 12 потоков, то такой сервер заиграет совсем новыми красками. И это не сильно дорого все стоит.
- набор рельсов для этих серверов. Учитывая то что и стойка у меня есть на 40 юнитов тоже бесплатно полученная можно и пособирать себе нехилый ЦОД (центр обработки данных)
- две дисковых полки IBM на 24 SAS диска. Причем какое-то количество дисков тоже на 146 гигов там стоит. Полки очень тяжелые непонятно почему. Там и SAS выходы и iSCSI и сетевые и оптические. Я давно уже хотел попробовать сделать отказоустойчивый кластер серверов для работы 1с и вот теперь это стало действительно можно сделать.
- несколько "лезвий" т.е. блэйд серверов. Тоже IBM вроде как новые, нет следов использования, двухпроцессорные, тоже память DDR3 и sas диски на борту. Не понял пока как называется тот корпус, куда эти лезвия втыкаются, но по возможности я его куплю чтобы позаниматься с такими серверами на практике.
- блоки силовых розеток. Новые, розетки повышенной мощности, на моем APC Smart ups 2200 такая как раз стоит входная. Долго не мог найти для нее питающий кабель, потом сразу несколько штук не помню уже где-то тоже нахаляву раздобыл.
Так что отдача получилась огого. Все пока сложил в гараже, но по возможности перевезу в теплое помещение и буду для начала разбираться что докупить чтобы появилась возможность сборки чего-то для тестов. По крайней мере понядобится память, кабели SAS внешние.
Уже несколько лет я занимаюсь тем, что получаю на авито бесплатно различные вещи. Не надо думать, что бесплатно можно получить всякое барахло, так думают те, кто не использовал для таких целей специальные средства. Конечно если вы будете "время от времени" руками листая авито искать что-то действительно интересное (хоть бесплатно, хоть за деньги) вероятность чего-то действительно ценное найти минимальна. Я это уже понял давно, поэтому для поиска интересных объявлений использую самодельные программные средства.
В самом начале (лет 5 назад) с авито еще можно было вытаскивать даже реальный телефон продавца. И моя программа парсинга авито это умела. На обычном сайте он шел в виде картинки, а вот на мобильной версии можно было получить цифрами. Правда для этого надо было очень постараться, залогиниться на авито (из программы, отправляя post и get запросы). потом уже также программно считывать объявления и вынимать телефон.
Также я парсил и юлу, там было гораздо меньше интересных отдач, но все таки тоже были.
Но потом авито вообще перестало выдавать реальные номера телефонов, можно было получить или фиктивный номер, или звонить/писать через само авито. Эта "новация" авито сильно поубавила пыл разработчиков всяких парсеров, т.к. поставило жирный крест на рассылках, сборах телефонов, прозвонах и т.п. Я же в телефонах особо не нуждался, т.к. чаще продавцы оставляли возможность только написать сообщение. Т.к. понимали, что отдавая какой-нибудь холодильник, их просто задолбают звонками всегда. И ночью и еще несколько дней. Не буду подробно описывать весь путь, который я прошел постоянно меняя способы и алгоритмы получения халявы, но наступил такой момент, когда я уже никак не мог _Программно_ открыть авито и получить оттуда данные с объявлениями. Раз, два выходило, потом хопа! Авито меня блокировало и на этом поиск халявы заканчивался. Единственно что меня как-то успокаивало, что видимо аналогичные проблемы есть и у моих конкурентов.
Какое-то время я использовал программу на питоне, которая открывала хром, там открывала нужную ссылку (типа бытовая техника бесплатно), а потом сохраняла выданные объявления в файл. И вот наконец этот метод тоже железно закрыли. Открыть авито стало возможно только руками. Запускаем браузер, открываем нужную страницу, смотрим и все. Я уже начал задумываться от сервоприводе, который бы тыкал по кнопкам и сам в автоматическом режиме искал халяву, но появилась идея поинтереснее. Я же программист и помню как давным давно еще в 90ых мне надо было написать программу для распознавания диаграмм с самописцев. И нет чтобы к прибору датчик подключить для снятия показаний, а именно подавай распознанные диаграммы. Это было в теплосети, там всякие графики давления в котлах, температуры, расхода газа и т.д. Я тогда знатно натрахался с этой задачей, вишенкой на торте была необходимость сканировать диаграммы и делать это программно. Т.е. оператор вставляет в планшетный сканер диаграмму и дальше все должно быть само. Т.е. моя программа должна была уметь отрыть окно драйвера сканера, выбрать там нужные параметры (типа 300 dpi, цветность) и программно нажать кнопку сканировать, потом программно сохранить полученный скан в jpeg (а на первых порах использовал pcx ;-))), закрыть драйвер сканера и дальше уже там обрабатывать изображение.
И вот именно то самое место где я искал окно, а в нем искал контролы и слал им сообщение типа WM_LBUTTONDOWN (нажата левая кнопка мыши) меня и вдохновило на новый способ.
Через некоторое время родилась новая программа sendkey. Она запускалась только через командную строку и принимала один аргумент - ссылку. Типа такого:
Программа имеет ini файл с настройками:
[settings]
Application = "C:\Program Files\Mozilla Firefox\firefox.exe"
WaitSec = 5
PathSaveResult = "C:\GETYULA\~page.html"
EnableDebug = 1
Т.е. строка запуска браузера, ожидание ответа авито, куда сохранить результат запроса, создавать файл с отладочной информацией. Логика работы такая. Запускаем программу sendkey.exe с аргументом ССЫЛКА. Программа запускает браузер с аргументом та же ссылка, браузер честно откывает авито (авито думает все хорошо, меня же браузером настоящим открыли, а не из питона или post запросом), ждет готовности браузера потом программно шлет в браузер сочетание клавиш "CTRL+S" т.е. сохранить страницу, затем моя программа ищет окно диалога сохранения файла, меняет в нем имя сохраняемого файла на мое заранее заданное имя, и программно нажимает кнопку "Сохранить". Затем через небольшую задержку и браузер программно закрывается. В итоге, мы имеем в нужной папке html файл со списком обявлений. Сортировка, фильтры, регион поиска, все это задается в ссылке. Затем в работу вступает 1с. На ней у меня написана конфигурация ("Запускалка") для анализа объявлений. Именно эта конфигурация с нужной периодичностью запускает вышеупомянутую программу, и потом разбирает ответ авито. Вычленяет объявления, накладывает фильтры, смотрит на попадание слов объявления в черный или белый списки. По необходимости рассылает клиентам то что нашли через мессенджер телеграмм.
Как показала практика такой режим работы не вызывает блокировки со стороны авито вообще! Все работает днями, неделями и месяцами. Так, например, недавно я стал сотрудничать с новыми клиентами. Они ищут на авито видеокарты. По всей России, за любые деньги, выискивают что-то приличное. Что под ремонт, что на перепродажу, что-то на запчасти. Был раньше телеграмм бот "Ловец видях", но видимо из-за постоянных блокировок авито сдулся. Моя же система пока еще работает.
Стоит заметить, что таким образом можно искать не только видеокарты и не только на авито. А, например, битые автомобили недорого под восстановление, или бесплатные стройматериалы, или антиквариат, да что угодно.
Чтобы вам был понятен маштаб халявы на авито, я приведу тут некоторые реальные отдачи, которые я получал за последнее время и что-то из нового.
Так самое интересное что было получено (что-то потом реализовано на том же авито)
- два токарных станка (1И611П и самодельный малогабаритный по металлу) оставил себе
- две деревянных бытовки (продал)
- котел на 65 КВт на дизеле с горелкой (продал)
- газовые баллоны без счета (пропан, кислород, углекислота и прочие технические газы) (продаю постепенно)
- немеряное число холодильников (в т.ч. торговые), газовые плиты, прочая бытовая техника
- бесперебойник на 30 КВа без аккумуляторов (продал)
- увлажнитель гигантский с wi-fi
- компрессор на 8 атм (починил, заменив реле давления и использую)
- внешние блоки кондиционеров от мультисплит систем, кондеи в комплекте, отдельно внутренние блоки
- 4 зерновых кофемашины (3 починил, использую)
- платежные терминалы самообслуживания (восстановил, заменил в одном сенсорное стекло, сделал из них систему управления бильярдным залом)
- игровая приставка сони PS2
- лазерный станок с полем 40 на 40 см с ЧПУ и чиллер к нему на 5 КВт (запустил, резал фанеру и ламинат)
- строительные леса (ждут на даче своего часа)
- ледогенератор
- напольный принтер HP уровня предприятия на колесах размером с холодильник
- моноблоки несколько штук
- биотуалет
- газовый настенный конвектор для обогрева больших помещений
- склад отрезных дисков по металлу (взял килограмм 100 новых в упаковках) (постепенно продаю)
А сколько было бытовой техники, компьютеров, деталей от них, всяких кабелей, стройматериалов, всякого железа, инструментов торговой техники я уже и не вспомню. У меня, например уже целая коллекция кувалд :-) Даже гиря есть на 32 кг бесплатная.
Каждый день в среднем отдают бесплатно по 5...8 холодильников и столько же стиральных машин. Частично рабочие или с дефектами. Но это все можно пустить на запчасти. Прикиньте, сколько всего реализуемого в старой ржавой стиралке: мозги, помпа, прессостат, аммортизаторы, датчики, кнопки, мотор, стекло, резиновый уплотнитель и еще может что. Этими запчастями можно потом нехило приторговывать. Хранить их в гараже, там же разбирать технику. А затраты на нее мизерные. Покупать ее не надо, только поехать и забрать.
Мне так однажды еще 1000 руб доплатили за то что я старую плиту увез, а новую подключил. А я же и старую еще почистил и продал потом.
В среднем газовая плита уходит влёт за 4000 руб. Много кто их покупает для съемного жилья. Только ее надо отмыть и прочистить форсунки. Тут поможет канистра (полученная бесплатно) с бензином, куча тряпок (отдавали бесплатно постельное белье килограмм 100, что-то продал, что-то оставил себе на ветошь). Плюс компроссором продуть, есть насадка с длинным носиком (тоже бесплатно новую в блистере отдавали).
Торговые холодильники продаются от 8000 до 14000 руб. Правда они очень тяжелые.
Приличные стиралки в рабочем состоянии я продавал от 5000 до 8000 руб.
Таким образом я создал свое направление в малом бизнесе.
- За аренду я не плачу, т.к. всю технику везу в гараж, там сортирую, разбираю и продаю. Разве что ежегодный взнос. Электричество в гараже бесплатное.
- Закупочные цены у меня нулевые - я ж ничего не покупаю. Только бензин и шоколадки на обмен.
- Зарплату я никому не плачу - купил прицеп, лебедку, телеги, разные приспособы и гружу все сам.
- Дополнительно получаю деньги с клиентов, которые ищут что-то свое через мою систему.
- При этом я повышаю свои навыки. Умею заправить холодильник или кондиционер фреоном, в т.ч. и автомобильный, могу починить микроволновку, обогреватели, бытовую электронику, стиралку. Обзавелся электро и газо-сваркой, пополнил запасы инструмента, часто отдают наборы инструментов дедушек после их смерти :-(. Замена щеток, предохранителей, выключателей, перетершихся кабелей покрывает где-то 60% всех ремонтов.
Буду рад, если изложенное кого-то заинтересует или вызовет желание заниматься аналогичным бизнесом!
Вчера случилась история. Я на юле продавал внешние блоки кондиционеров. Фуджитсу, здоровенные килограмм по 50 весом несколько штук одинаковых. Стояли они у меня в гараже. Звонит какой-то мужик, говорит что все разом хочу купить. Это меня насторожило, т.к. обычно берут поштучно если где-то сдох именно такой же. А тут все разом, они же бу, внешний вид на троечку. Поехал в гараж показывать. Покупатель сказал что приедет на газели и привезет грузчиков. Приезжают на легковой машине (какой-то простенькой неприметной) 3 цыгана. Просят показать. Хорошо что гараж у меня на охраняемой территории и совсем рядом с въездом. Тут и КПП и охрана ходит, собаки там где-то сидят, камеры во все стороны смотрят. Сначала пришли 2 цыгана (у одного огромный шрам через все лицо), лет по 45...50. Стали как бы смотреть блоки и торговаться. Типа "мы машину к тебе гнали, давай вообще все за 3 копейки". Я сказал что тоже машину гнал им все показывать и цена по телефону была озвучена. В общем они ни в какую и начали проявлять признаки агрессии. Потом вроде смягчились, сказали давай мы еще что-то купим а ты нам скидку сделай. В общем решили купить совершенно нелепый набор товаров: 3 огромных внешних блока кондиционеров, принтер HP огромный на колесиках, диски для болгарки 40 упаковок, и советский спектрофотометр. Думали золота там вагон, как они в него вцепились! А это тяжелый прибор в нем алюминия килограмм 30. Огромный и неподъемный. Ходили то в гараж то к своей машине и потом оттуда вышел третий. Вот он видимо был самый главный. Одет дорого, держится гордо, лет 55...60, тоже цыган. Видимо не хотел свое лицо раньше светить. Но когда поняли, что взять с меня нечего, кругом камеры и охрана, видимо их основной план (дать по башке продавцу и по тихому завладеть машиной или имуществом) пошел лесом. В общем сказали что мы отъедем чая попить на заправку, я их провел через КПП и они сразу же без всяких чаев смылись. Мораль такая: приехать покупать к вам какую-то фигню могут не те и не так. И если вы покупателя (а их может оказаться несколько человек) принимаете в одиночку и не на людях, вы эту сделку можете и не пережить :-(.
Вспомнилась такая история. Купил я себе автоприцеп. Давно о нем мечтал, вначале приделали мне фаркоп и вот поехал на юнону и там выбрал и купил. Двухколесный с тентом, самый обычный в общем. Естественно сразу же озаботился получением номеров. И покатил в мрэо. Ехать было недалеко и я нормально доехал, что-то там сделал, закатил машину с прицепом на площадку и пошел в зал ожидания ждать своей очереди. Замечу для тех кто не в теме, номера для прицепов не такие как для машин. У них и нумерация другая и серия, все в общем другое. А прикол был в том что именно в этот день выдавали номера с буквами "Х....ЕР". И вот какая-то группа бабок (то ли 2 то ли 3) которые регистрировали свои машины, как увидели что им дали, так сразу стали орать: "Что вы нам за номера такие дали!!! Мы не хотим такие номера! Давайте нормальные!!!". Гаишники им уже до хрипоты объясняли что типа это серия такая, и всем номера по порядку дают, и вам их вообще уже выдали, так что чапайте отсюда, вам услуга оказана! Менты орут, бабки орут, уходить не хотят, в общем жесть что началось. И тут подходит моя очередь. Мне дают номера для прицепа. Не ХЕР! И эти бабки увидели это! Они начали орать, брызгать слюной!!! В вообще тут охерели все! Оборотни в погонах, вот чуваку (т.е. мне) дали не херовые номера!!! Менты им уж пытались объяснить, что это не такие номера, что они для прицепов и т.д. В общем я решил дергать оттуда побыстрее, пока это безумие не дошло до меня. Вот такая история.