Задать вопрос
  • Как сгенерировать ссылки в Python для парсинга всех страниц?

    kshnkvn
    @kshnkvn
    yay ✌️ t.me/kshnkvn
    pattern = "https://www.betexplorer.com/results/soccer/?year={}&month={}&day={}"
    
    for year in range(2016, 2020):
        for month in range(1, 13):
            for day in range(1, 32):
                url = pattern.format(year, month, day)
                print(url)


    С проверкой сильно не заморачивайтесь, сайт возвращает 404 статус, если страницы нет, на это и делайте проверку. Примерно так:

    r = requests.get(url)
    if r.status_code == 404:
        print("This page does not exists")
    Ответ написан
    1 комментарий
  • Как вы храните интересную для вас информацию?

    @pgpja
    Программа Cherrytree + сохранение интересных HTML страничек на HDD + DocFetcher.
    Ответ написан
    Комментировать
  • Что это за ошибка?

    При таком url для метода requests.get() срабатывает защита от программ-роботов.
    1. Попробуйте перед выполнением requests.get() заполнить Requests Headers данными, какие посылает, например, Chrome при обращении к Яндексу.
    2. Смените url, предназначенный для поиска информации о погоде в Томске, на "https://yandex.ru/pogoda/tomsk" и, естественно, параметры для выделения температуры.
    3. Если блокировка будет срабатывать, то советую использовать модуль silenium (управление браузером из вашей программы)
    Ответ написан
    Комментировать
  • В чем сложность портирования приложений с mac на линукс?

    DevMan
    @DevMan
    основная сложность - несовместимые/закрытые системные API/фреймворки/либы.
    если приложение изначально не писалось с прицелом на кросс-платформенность, то зачастую проще написать с нуля, чем портировать.

    и не забываем, что для портирования нужен исходный код. который у большинства профессионального десктопного софта закрыт.

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

    15432
    @15432
    Системный программист ^_^
    Ну да, это такая технология, уведомления от сайтов типа youtube, чтоб новые ролики не пропускали. И спамеры тут как тут. Поэтому я эти уведомления вырубаю к чертям везде и полностью.
    Ответ написан
    Комментировать
  • Как посчитать суммы в списке словарей?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    a = <ваш списочек>

    result = [{' id': z, 'qty': sum([y['qty'] for y in filter(lambda x: x[' id']==z, a)])} for z in sorted(set([x[' id'] for x in a]))]
    print(result)


    [{' id': '1', 'qty': 8}, {' id': '2', 'qty': 2}, {' id': '3', 'qty': 10}]

    З.Ы. Просьба с уважением относиться к пользователям которые Вам хотят помочь. Когда просят привести Ваши попытки решения проблемы - это не из вредности, а в попытке понять Ваш ход мыслей в решении проблемы, если таковые имели место.
    Ответ написан
    9 комментариев
  • Как скомпилить два файла в exe?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Эээ... два файла с каким содержимым? И что в итоге оно должно делать, полученное ехе?
    Ответ написан
    Комментировать
  • Можно ли использовать Raspberry Pi как небольшой домашний сервер для небольших задач?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Потянуть-то потянет, даже докер там развернёте. Но по памяти будет тесненько и ввод/вывод на флешку или что вы там подключите через USB будет довольно медленным.
    Но нафига вся эта машинерия - не ясно.
    Понятно, если бы мутили какой-нибудь умный дом и нужна локальная админка.
    Понятно, если на малинке поднять самопальный NAS (хотя медленный же...), понятно если торрентокачалку с DLNA, чтобы киношки через смарт-тв локально смотреть.

    Сервер на поиграться тоже можно, но сейчас VDS на лоу-костере обойдётся в 150-170р/мес (одно ядро, гиг оперативы и 20 гигов диска). При этом на ней белый айпишник, вы на ней поднимите в контейнерах VPN, телеграм-прокси, по ssh откуда угодно туда ходить можно и не возиться с NAT'ами домашнего провайдера.
    Занимаетесь вебом - иметь постоянную виртуалку для экспериментов, ИМХО, маст хев.
    Ответ написан
    Комментировать
  • Как изменять память процесса?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    у меня не меняется значение в калькуляторе, то есть если у него становится 40, то у меня все равно остается на 20.

    Значит ты нашёл неправильный адрес. Try something else!
    Ответ написан
    3 комментария
  • Почему компилируется 'Hello, World!', хотя был введен другой код?

    Zoominger
    @Zoominger
    System Integrator
    cout << "Привет, << first_name << "!\n";

    Вижу ошибку. Вы тоже приглядитесь.
    Видимо, компиляция не проходит и запускается последний рабочий вариант программы.
    Ответ написан
    6 комментариев
  • Как сделать парсинг почты на python?

    @del4pp
    На пайтоне есть библиотека imaplib, которая позволяет получать письма с вашего ящика через IMAP и парсить их . Ниже мой код который я создавал для себя для такой же задачи.

    def read(sender_of_interest=None):
        imap = imaplib.IMAP4_SSL("imap.gmail.com", 993)
        imap.login('Почта', 'пароль')
        imap.select('INBOX')
        if sender_of_interest:
            status, response = imap.uid('search', None, 'UNSEEN', 'FROM {0}'.format(sender_of_interest))
        else:
            status, response = imap.uid('search', None, 'UNSEEN')
        if status == 'OK':
            unread_msg_nums = response[0].split()
        else:
            unread_msg_nums = []
        data_list = []
        for e_id in unread_msg_nums:
            e_id = e_id.decode('utf-8')
            _, response = imap.uid('fetch', e_id, '(RFC822)')
            html = response[0][1].decode('utf-8')
            email_message = email.message_from_string(html)
            data_list.append(email_message.get_payload())
        for elem in data_list:
            clean_html(elem)


    а дальше все просто:
    if "ключевое слово" in массив_с_сообщениями[индекс сообщения]:
    ...то что надо сделать если ключевое слово найдено.

    ну и в цыкле понятное дело
    Ответ написан
    Комментировать
  • Как разделить сервер пополам?

    deepblack
    @deepblack
    Я предлагаю поставить любой нормальный гипервизор,
    например ESXi (VMware vSphere Hypervisor)
    Ответ написан
    Комментировать
  • Что входит в понятие "поднять сервер"?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    1. Прийти в серверную, взять сервер и приподнять его. Проблемы: обычно сервера прикручены к стойкам. Легко поднять неприкрученный сервер, прикрученный следует открутить, отсоединить и тогда уже поднимать. Не забудьте потом всё опустить и подключить как было.
    2. Взять и купить на месяцок самую дешевую виртуалку (VDS) на каком-нибудь лоу-кост хостинге. Выберите ubuntu, поставьте docker, запустите в отдельных контейнерах (и пропишите в контаб) VPN, прокси для Телеграма, сервер майнкрафта. Каждое из этих действий делается одной командой. Проблемы: осторожно, на такой сервер легко подсесть. Стабильно работающий телеграм, отсутствие блокировок сайтов, свой ламповый сервачок майнкрафта - к этому быстро привыкаешь. Потом захочется поднять своё облако, запустить свою интернет-радиостанцию для друзей... Будьте осторожны, если борода прорастёт сквозь свитер, от них будет трудно избавиться.
    3. Внимательно изучите предметную область в рамках которой вы проходите стажировку и, наверно, станет понятно о каком сервере тут может идти речь. Может быть вы в грузчики метите и тогда см. п.1.
    4. Наверно ваш вопрос разумно задать тем, кто поставил такую задачу, а не неопределенной группе лиц, которые помогают новичкам решать технические задачи.
    Ответ написан
    Комментировать
  • Что писать в "README.md" (GitHub)?

    megakor
    @megakor
    Go/PHP developer | ВКонтакте
    Каких-то правил нет.

    Обычно указывают:
    1. Установка
    2. Описание
    3. Документация
    4. Авторы
    5. Лицензия

    Ваш репозиторий - ваши правила, делайте как хотите.
    Ответ написан
    Комментировать
  • В чем минусы питона 3.6?

    zooks
    @zooks
    Frontend
    С библиотеками под Python 3 уже давно всё ОК:
    py3readiness.org
    Ответ написан
    Комментировать
  • В чем минусы питона 3.6?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Естественно переделали, за 10 лет-то существования Python 3. Теперь идёт обратный процесс, с каждым днём всё меньше библиотек и фреймворков поддерживают 2.7.
    Ответ написан
    3 комментария
  • Будущее веб-разработчиков python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Обработка шаблонов всегда была лишь малой частью работы бэкенда. А js-фреймворки только её на себя и забирают.

    Асинхронный код на много сложнее синхронного, но нужен далеко не всегда, поэтому синхронные фреймворки никуда не денутся. К тому же, у Django есть Channels. Да и Python не заканчивается на Django и Flask, есть полностью асинхронные Twisted, Tornado, Aiohttp и прочие.
    Ответ написан
    Комментировать
  • Будущее веб-разработчиков python?

    dmnBrest
    @dmnBrest
    Salesforce for money. Python, Go, Ruby for soul.
    Насколько я могу судить из свой практики. Ангуляр остается (и еще долго будет оставаться) всего лишь "продвинутым шаблонизатором" для создания интерактивных страничек. Клиенты не спешат выкидывать бизнес логику на фронтенд. А на счет того что nodejs выпихнет python с рынка бэкенда, то это вообще нонсенс. Сервернный JS красив пока не начал на нем писать. Для Hello World пойдет, но писать серьезные бизнес приложения - просто сразу ставить крест на бизнесе клиента. Серверный JS взлетел лишь благодаря хайпу и наличию огромной армии jQuery программистов, который возомнили себя теперь full-stack программистами. Сами погуглите много интересных историй про качество кода в NPM. Вот тут уже давно тоже был показательный случай
    https://habrahabr.ru/post/228751/
    Я тоже поддавался хайпу и пробовал для продакшен проектов и nodejs и go. Но в итоге все равно вернулся к старому доброму python :))))
    Ответ написан
    16 комментариев
  • При включении windows данное окно, что делать?

    @pawtetius
    Major Hardware spec
    Дождаться окончания проверки диска и больше не выключать комп выдергиванием кабеля питания.
    Ответ написан
    2 комментария