• На чем лучше писать аналог Aliexpress?

    solotony
    @solotony
    покоряю пик Балмера
    >>На чем посоветуете написать?

    На русском языке в ворде полностью описать проект, а уже потом выбирать какие части проекта на чем будут разработаны, исходя из бюджета и прочих условий.
    Ответ написан
    Комментировать
  • Какой метод для нажатия на кнопку?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Класс он на то и класс, чтобы элементов было несколько на странице. Здесь аж 14 элементов с классом " phone-sl".
    С qfuserphone[] дело обстоит так же, элементов несколько, и вы выбираете неправильный.

    В данном случае нужен второй элемент на странице, так что можно просто найти несколько объектов:
    driver.find_elements_by_name('qfuserphone[]')

    Взять второй и работать с ним. В итоге будет выглядеть как:
    element = driver.find_elements_by_name('qfuserphone[]')[1]
    
    element.click()
    element.send_keys(choice(phones))


    ps: кликать не обязательно
    Ответ написан
    2 комментария
  • Почему не получается в Python бот Telegram модуль Telebot register_next_step_handler сделать вторую цепочку беседы?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    bot.send_message(message.chat.id, 'Какая длина комнаты в метрах?'

    скобка
    Ответ написан
    1 комментарий
  • AttributeError: 'str' object has no attribute 'sleep' ошибка. Как решить?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Нужно прочитать хотя бы один любой учебник, тогда перекрытие имени модуля time именем переменной time не будет вызывать недоумения.
    Ответ написан
    Комментировать
  • AttributeError: 'str' object has no attribute 'sleep' ошибка. Как решить?

    Vindicar
    @Vindicar
    RTFM!
    Чтобы решить, надо думать что делаете.

    import time - импортируете модуль time в переменную time
    time = input("Сейчас день или ночь?: ") - выкидываете старое значение переменной time и заменяете его строкой. Прощай, модуль.
    time.sleep(0.5) - пытаетесь обратиться в функции sleep() модуля в переменной time, но его там уже нет, там теперь строка

    Тут дело не в питоне, а в элементарной логике.
    Ответ написан
    Комментировать
  • Как с помощью значения переменной выйти на имя сотрудника в другом файле?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Коротко можно так:
    with open('salary.txt') as file:
    	lines = file.read().splitlines()
    
    with open('workers.txt') as file:
    	lines2 = file.read().splitlines()
    
    max_salary = max([x.split(',')[1] for x in lines])
    inn = [x.split(',')[0] for x in lines if x.split(',')[1] == max_salary][0]
    max_salary_user = [x.split(',')[0] for x in lines2 if x.split(',')[1][4:] == inn][0]
    
    print(max_salary_user)

    Насколько я понял, вас ставит в ступор конструкции вида:
    max_salary = max([x.split(',')[1] for x in lines])
    Но в них нет ничего страшного. Данная конструкция является эквивалентом следующей:
    my_list = [] # Создаем пустой список
    
    for x in lines: # перебираем каждую строку
    	my_list.append(x.split(',')[1]) # Каждую строку делим по запятым, берем второй элемент и добавляем в список.
    
    print(my_list) # В списке будет ['99424', '91300', '91870', '63400', '80500', '68070', '76320', '97600', '98060', '78030']
    print(max(my_list)) # С помощью функции max берем сомое большое число из списка.


    Попробуйте потренироваться на следующем простом примере: Есть список чисел - от 1 до 15. Нам нужно выбрать числа, которые больше 7 и меньше 13. Можно сделать так:
    i = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
    
    for x in i:
    	if x > 7 and x < 13:
    		print(x)

    А можно сделать короче:
    i = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
    
    num = [x for x in i if x > 7 and x < 13]
    print(num)
    Ответ написан
    4 комментария
  • Нужна помощь с тех. заданием. Что гуглить?

    vabka
    @vabka Куратор тега ASP.NET
    Токсичный шарпист
    Перевод с комментариями от меня.

    Консольное приложение, которое будет собирать информацию с компьютера.
    Оно должно отправлять данные веб-сервису через websoket.
    Нужно собирать: Имя компьютера, Часовой пояс, Название ОС, версию дотнета

    Тут вам нужно будет загуглить:
    1. что такое websocket, как его использовать в .net.
    2. Каким способом можно получить требуемую информацию. Скорее всего, она лежит где-то в System.Environment.*


    Веб-сервис должен отслеживать, когда устройства включаются/выключаются.
    Веб-сервис должен собирать информацию с устройств каждые 5 минут и отправлять её в Azure Function

    Тут вам нужно будет загуглить/подумать:
    1. Что за Azure function и как в неё можно отправить данные
    2. Как через вебсокет запросить у клиента данные
    3. Подумать, как можно отследить момент включения/выключения.
    4. Как делать это всё периодично.


    Azure Function для обработки информации с веб-сервиса. Он должен обновлять информацию только по необходимости (если произошло изменение с последнего состояния).
    Нужно использовать MS SQL в качестве бд и linq2db в качестве ORM

    1. Тут снова ещё внимательнее читаем, как писать Azure function
    2. Разбираемся в linq2db
    3. Читаем про MS SQL и про просто SQL, если ещё не знаем.

    Я бы взял для решения этой задачи SignalR, тк он достаточно простой и решает проблемы с броадкастом сообщений от сервера к клиентам.
    Ответ написан
    Комментировать
  • Как создать индивидуальную страницу товара в интернет магазине на джанго?

    solotony
    @solotony
    покоряю пик Балмера
    from django.views.generic.detail import DetailView
    
    class TovarView(DetailView):
        model = Tovar
        template = 'my_tovar.html'


    urlpatterns = [
       .....
        path('tovar/<pk>', TovarView.as_view(), name='tovar'),
       .....
    ]
    Ответ написан
    Комментировать
  • Почему у меня начинает работать функция до приказа в пайтон?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Потому что вы ее сами вызвали, поставив () в конце имени функции в конструкторе Button
    Ответ написан
    Комментировать
  • Почему у меня начинает работать функция до приказа в пайтон?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Уберите круглые скобки в конце command=System().showinfo()
    Ответ написан
    Комментировать
  • Какой из двух типов обучения лучше?

    @dmshar
    Если для школьника младших классов - то 1+1+1.
    Если для более-менее взрослого человека, серьезно вознамерившегося что-то выучить, то
    5 часов на программирование+алгоритмы и 3 часа на английский. И так КАЖДЫЙ день, желательно без выходных и праздников.
    Тогда толк может быть и будет.
    Ответ написан
    1 комментарий
  • Плохо ли то, что я перепрыгиваю с направлений?

    IonDen
    @IonDen Куратор тега IT-образование
    JavaScript developer. IonDen.com
    Обычное юношеское метание. Ничего плохого в этом нет.

    Теперь пора обрести следующий навык - усидчивость. Для этого возьмите тот технологический стек что вы изучаете сейчас (или какой вам больше нравится) и напишите на нем большой проект. Это может быть open-source библиотека, app в гугл. сторе или что-то еще.

    Чистое программирование в отрыве от реальных задач представлят разве что спортивный интерес. А вы ведь хотите получить какую-то профессию правильно?
    Ответ написан
    Комментировать
  • Какой смысл в refresh токене?

    @deliro
    Но что будет, если злоумышленник также украдет refresh token?

    Не украдёт. JWT может быть не-httpOnly, чтобы его мог читать фронтенд. Следовательно, JWT можно украсть через XSS-дырку. refresh token должен быть всегда httpOnly и читать его может только сервер.

    Второй уровень защиты — JWT ставится на .example.com, в то время как refresh токен ставится только на auth.example.com. Таким образом, даже если любой из твоих сервисов (кроме сервиса авторизации) будет скомпрометирован, refresh токен останется защищённым, т.к. не будет доступен никому кроме сервиса авторизации.

    Да, это всё подразумевает, что как минимум refresh-токен нужно хранить защищённым от XSS, то есть точно не в localStorage, а в куках или чём-то подобном.
    Ответ написан
    4 комментария
  • Объясните, Как работает WSGI?

    qlkvg
    @qlkvg
    python backend developer
    https://www.youtube.com/watch?v=LEbVn0cJQLg&list=L...

    крайней толковый доклад про WSGI и ASGI. про WSGI буквально первые 5 минут, но вполне подробно на примере объясняется
    Ответ написан
    Комментировать
  • Как записать list (список?) в csv файл?

    LazyTalent
    @LazyTalent
    Data Engineer, Freelancer
    О, Луц! Как это развидеть?!
    import csv
    
    from geopy.geocoders import AlgoliaPlaces as Geo
    
    cities = ["Токио", "Лондон", "Берлин", "Череповец"]
    geo = Geo()
    
    data = []
    
    for i in cities:
            n = geo.geocode(i)
            data.append([i, n.latitude, n.longitude])
    
    with open('data.csv', 'w', newline='') as f:
            w = csv.writer(f)
            w.writerow(['city', 'lat', 'lon'])
            w.writerows(data)
    Ответ написан
    1 комментарий
  • Ошибка синтаксиса. Как ее убрать?

    OSMANOF
    @OSMANOF
    Segmentation fault
    Бред какой-то. Ну ладно, начнем.
    Во-первых, именованные аргументы следуют за позиционными. То есть, так:
    await channel.send(
        f'{member.mention} %s' % Bot.get_emoji(815717281068875806), 
        emb.add_field(name = 'Общение', value = f'Основной чат для общения - <#748800652783648778>. Изначально для Вас сервер закрыт, дабы не пустить на сервер бота-спамера. Чтобы получить право отправлять сообщения - вы должны нажать на реакцию в канале <#816326492555706369>. /nЕсли возникли вопросы, пожалуйста, обращайтесь напрямую к администраторам или модераторам.', inline = False),
        emb.set_thumbnail(url = 'https://media.tenor.com/images/8fe5b5f2c40a8f870569ed7b271cf876/tenor.png'),
        emb = discord.Embed(title = 'Приветствуем Вас!', description = 'Каждый участник на этом сервер уважаемый, но все же гость. Поэтому настоятельно просим ознакомиться с каналом <#748790422062628954>. Просьба чтить и соблюдать данные правила.', color = 0xEE82EE)
    )


    Вот и все. Но есть пара неточностей.
    f'{member.mention} %s' % Bot.get_emoji(815717281068875806)

    F-строка. Сильно в discord.py не углублялся, но если используешь f-строку, то зачем далее использовать %s?

    emb.add_field(name = 'Общение', value = f'Основной чат для общения - <#748800652783648778>. Изначально для Вас сервер закрыт, дабы не пустить на сервер бота-спамера. Чтобы получить право отправлять сообщения - вы должны нажать на реакцию в канале <#816326492555706369>. /nЕсли возникли вопросы, пожалуйста, обращайтесь напрямую к администраторам или модераторам.', inline = False),

    Тут f-строка абсолютна бессмысленна. Префикс f следует убрать. А перевод строки не /n, а \n.
    Ответ написан
    5 комментариев
  • Почему при создание нового сайта url правильный, а когда скидываешь ссылку, в url добавляет другие символы?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Доменное имя содержит нелатинский символ, соответственно это IDN, в латинице представляемый в виде punycode.
    Ответ написан
    2 комментария
  • Как войти в режим суперпользователя?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    команда su выполняет переход под рута
    su -
    и вы рут. При этом запрашивается пароль рута

    команда sudo позволяет выполнять другие команды от имени рута, при этом запрашивается пароль пользователя.

    Т.е.
    su -
    вводим пароль рута
    и становимся рутом из под любого пользователя

    если пароля рута нет или он неизвестен - настраивайте sudo
    Ответ написан
    1 комментарий
  • Как стать специалистом ИБ?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    Внимание! Изменился адрес почты!
    Хочу начать заниматься программированием всерьёз, также уйти в сферу - кибербезопасность

    И мы сразу сталкиваемся с логическим несоответствием. ИБ - это совсем даже не про программирование (хотя программирование знать надо, но знания нужны специфические). ИБ - это в основном про людей и ... бумаги.
    ИБ - это много-много скучной работы, это много-много бумаг, документов, регламентов, это знание законодательства и вынужденное отслеживание например, геополитический ситуации.
    ИБ - это иногда про работу, которая поначалу кажется прикольной, но на деле - крайне неприятная.
    ИБ - это прокси, файрволлы и СМП

    А Вы думали что - ИБ - это хакерская романтика?
    1) Какой язык изучать для этой сферы?

    Ассемблер, С, bash
    2) Для моих интересов нужно знать несколько языков? Каких?

    Уже перечислил. Знание Perl/Python может пригодиться для автоматизации сложных вещей, которые не пишутся на bash
    И вообще, правильное это решение?

    Нет. Разве только в самом общем плане.
    что необходимо знать?

    Законодательство. Работу админа. Психологию. Делопроизводство (я нифига не шучу - составление документов, регламентов, инструкций - это тоже ИБ). Сети и сетевые устройства. Сертификаты X.509
    Ответ написан
    5 комментариев
  • Почему не перезагружается сервер через cron?

    @galaxy
    Начните с того, чтобы писать полные пути в кронтабах:
    00 17 * * * /sbin/shutdown -r 0
    Ответ написан
    4 комментария