Ответы пользователя по тегу Python
  • Как вывести список с одним кортежем из трёх, в котором список состоит из чётных чисел?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    for x in l:
    	if len(x[1]) %2 ==0:
    		print(x)
    или:
    s = [x for x in l if len(x[1]) %2 == 0 ]
    print(s)
    Ответ написан
    Комментировать
  • Почему не устанавливается python?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Смотрите log файл, там все написано.
    Точно не помню, но для установки Python на Windows 7 нужно установить или какое-то обновление, или какое-то visual c++ redistributable.

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

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Очевидно же, что данные авторизации нужно где-то хранить. Можно создать и подключить профиль:
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument("user-data-dir=/home/sergey/SeleniumProfile")
    driver = webdriver.Chrome(chrome_options=options)
    driver.get("https://google.com")
    Ответ написан
    1 комментарий
  • Причина ошибки импортирования qtcore Отсутствует модуль?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Предполагаю что возможно причина в майкрософт библиотеках с++

    Скорее всего так и есть. Тут вариантов масса.
    1) Метод тыка. Скачиваете C++ redistributable и устанавливаете по очереди, пока не устраните ошибку.
    2) Посмотреть на работающих машинах список установленных C++ redistributable.
    3) Прогнать все DLL через Dependency Walker
    4) Посмотреть журналы Windows, возможно там будет имя отсутствующей библиотеки.
    Ответ написан
  • Как отсортировать список файлов?

    hottabxp
    @hottabxp Автор вопроса, куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Как подсказал galaxy, можно использовать key=lambda. Конкретно для моего случая(там после числа идет точка) можно использовать один из следующих способов:
    sorted(new_file_list, key=lambda n: int(n.split()[1].replace('.','')))
    sorted(new_file_list, key=lambda n: int(n.replace('.','',1).split()[1]))
    sorted(new_file_list, key=lambda n: int(n.split()[1][:-1]))
    Ответ написан
    Комментировать
  • Как открыть все ссылки из файла?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Очень просто.
    main.py:
    import requests
    from bs4 import BeautifulSoup
    
    with open('links.txt') as file:
    	links = file.read().splitlines()
    
    for link in links:
    	response = requests.get(link)
    	soup = BeautifulSoup(response.text, 'html.parser')
    	print(soup.title)
    links.txt:
    https://qna.habr.com/q/1099328
    https://qna.habr.com/q/1099326
    https://qna.habr.com/q/1099320
    https://qna.habr.com/q/1099316
    Результат:
    <title>Как удалить одинаковые ключи из словаря Python? — Хабр Q&amp;A</title>
    <title>Как открыть все ссылки из файла? — Хабр Q&amp;A</title>
    <title>Как отсортировать список файлов? — Хабр Q&amp;A</title>
    <title>Как создать "перезапуск кода" на Python? — Хабр Q&amp;A</title>


    Применение:
    Разбить код на функции, добавить обработку ошибок по своему вкусу.
    Ответ написан
  • Как проверить наличие элемента в json?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Может кривой json? У меня сработало(правда, я json прогнал через фиксер):
    61dc34873ee78316352402.png
    А как получаете json? Если requests, тогда попробуйте так:
    if not result.json()['data']['signals']
    Ответ написан
  • Как исправить ошибку SyntaxError: Non-ASCII character '\xc2' in file /usr/bin/py3clean?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    1) Не нужно таким образом ставить Python.
    2) Уже пора переехать на 64 бита.

    Не понимаю, почему новички рвутся ставить последний Python (например, 3.10). Для новичка что 3.6, что 3.10 - одинаково, они все равно не найдут различий.
    Ответ написан
  • Как использовать portabled версию Chrome с selenium на Python?

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

    Может лучше при запуске скрипта указывать нужные профили?:
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument("user-data-dir=./SeleniumProfile")
    driver = webdriver.Chrome(chrome_options=options)
    driver.get("https://google.com")


    А вот так options.binary_location = './chrome/chrome' можно указать путь к chrome (только пути замените на свои).
    Ответ написан
    1 комментарий
  • Почему не отправляется архив через urllib.request?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Я уже лет 30 не пользовался urllib (да и офф. документация рекомендует использовать requests), поэтому вам советую тоже использовать requests:
    import requests
    
    user_id = 121495485
    token = ''
    
    files = {'document': open('files.zip', 'rb')}
    response = requests.post(f'https://api.telegram.org/bot{token}/sendDocument?chat_id={user_id}',files=files)
    
    print(response.text)
    Ответ написан
    2 комментария
  • Как реализовать перегрузку методов в python?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
  • Почему find из BeautifulSoup не находит тег?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Тут все просто, как в квантовой физике. Своим скриптом сохраняем ответ реквеста на диск. Далее открываем файл в блокноте и смотрим, есть ли там данный тег с нужным классом. В 99,9% - нет. В таком случае газуем в google курить маны по selenium. Или же можно обойтись без selenium. Способов масса, главное чтобы хватило фантазии.

    Вот один из вариантов(у вас может не сработать, а может и сработать, а завтра сломаться - я не знаю. )
    import requests
    from bs4 import BeautifulSoup
    import json
    
    response = requests.get(
        url='https://play.google.com/store/apps/details?id=ru.mail.mailapp&hl=ru&gl=US&showAllReviews=true',
        headers={'user-agent':'Hacked by HottabXP!'})
    
    soup = BeautifulSoup(response.text,"lxml")
    dirty_comments = soup.find_all('script')[34].string # Методом тыка определяем, что json с коментами хранится
    # в 35 теге <script> и преобразовываем данные внутри тега в строку
    valid_json = dirty_comments[dirty_comments.find(' data:')+6:dirty_comments.find(', sideChannel')] # Вырезаем всё, что
    # находится между data: (плюс 6 символов) и sideChannel
     
    comments_json = json.loads(valid_json) # Тут уже работаем с обычным json
    
    for comment in comments_json[0]:
    	user_comment = comment[4] # Комментарий пользователя
    	try:
    		author_answer = comment[7][1] # Ответ на комментарий пользователя (может быть None)
    	except:
    		author_answer = '' # Если None, тогда в author_answer помещаем пустую строку
    
    	print(user_comment)

    Результат
    После обновления до Android 12 (Samsung One UI) почта перестала открывать письма в приложении. Виден только список, прочитать письма невозможно.
    После обновления, стало ужасным, пароль вводишь по 150 раз, постоянно теряет связь с интернетом, из за этого не возможно отправить вложения, если ничего не поменяться придётся сносить.
    В приложение просто не входит с правильным поролем. Его же копирую в вэб и всё заходит. Старое заходило, нафиг обновил((
    В принципе приложение хорошее, но после обновления рекламный блок стал выводиться на месте первого письма. Это очень неудобно - существенно уменьшает место для списка писем, плюс зачастую по привычке тычешь в рекламу вместо первого письма (возможно, в этом и есть задумка). Ищу альтернативу
    Вы, конечно, пока подумайте. А мы пока удалим ваше приложение и начнем пользоваться другим. Вот вы деревянные! Я ору с вас! Вам конечный пользователь говорит: ребята, я не смотрю и не читаю эту вашу рекламу. Она мне мешает смотреть почту. А в ответ чушь какая-то. Раздражающая почта. Теперь даже рекламу удалить нельзя из входящих писем. Слайд работает, а корзинка нет. Перехожу на оутлук. Удобнее и никакой рекламы. Это майл может себе оставить. Как и колонку с новостями на своей странице.
    Samsung Galaxy S21 - после обновления на Android 12 приложение перестало работать. Моргает и не открывается, либо открывается, но письма прочитать невозможно. Ссылается на то, что не обновлено приложение Android WebView, однако, все обновлено до последнего релиза.
    После того,как почта майл соединилась с сервисом ВК стало хуже. Я уже неделю бьюсь с восстановлением доступа к своей почте, так как забыла пароль. Но мне настойчиво отправляют зайти через ВК.И все попытки безуспешны. Уже нет желания просто работать с данным сервисом. Уважаемые разработчики, прошу вас вернуть возможности восстановления доступа, до соединения с ВК!
    После обновления не открываются письма в приложении. Что интересно после проверки приложения на телефоне, телефон пишет что есть проблема приложения, сбой в работе приложения и отправляет к разработчику. РАЗРАБОТЧИК СКОЛЬКО НУЖНО ЛЮДЕЙ, НАПИСАВШИМ ВАМ О ПРОБЛЕМЕ, ЧТОБЫ ВЫ УСТРАНИЛИ ПРОБЛЕМУ???
    Тут уже много кто писал, что после обновления до андроид 12 и one UI 4.0 на Самсунг приложение перестало открывать письма. Выдаёт ошибку "Ошибка в просмотре webview". Вы пишите ответьте, что надо написать в поддержку, но из приложения этого сделать не возможно. Кода нажимаешь кнопку "написать разработчику" выходит такая же ошибка.
    Здравствуйте, за последний месяц дважды устанавливаю Ваше приложение и оба раза удаляю. Невозможно совершить вход, постоянно пишет соединение. Разработчика нужно выгнать на мороз, и там оставить.
    Приложение не работает после обновления на Андроид 12, более месяца проблема не решается, притензии и замечания разработчикам не рассматриваются и не решаются, похоже майл почта утратила свою актуальность. Всем один ответ, напишите письмо разработчику, а толку...... ответов и решения проблем нет.... . Грядёт развал "майла"........ . Рейтинг приложения не актуален, большинство отзывов 1-2 звезды..... а у них.........!!!
    После обновления стали приходить уведомления "Новости". Мне нужна почта и не более того, мне не нужен браузер внутри почты. Ставлю одну звезду, так как убрать это навязанное новшество невозможно!
    Добрый день. После последнего обновления Samsung S21 перестали открываться письма. При попытке открыть появляется надпись "Ошибка в просмотре webview". Не могу даже войти в разел "Написать разработчику", поэтому пишу здесь.
    Не открывает письма после обновления Android. Пишет ошибка webview. Написать разработчику, как отвечает всем ПОТДЕРЖКА MAIR. RU, невозможно, т. к. вылезает та же ошибка. Хватит уже отвечать подобным образом, думаю, что вы уже и так поняли, что за проблема. Решите её уже.
    некоторые письма автоматически сортируются в папку "рассылки". удалить эту папку невозможно. это неудобно, мне нужно видеть все письма в одном месте, а не лазать по папкам. отвратительное приложение
    Не могу пользоваться приложением, не может зайти в мою почту, вылетает на первой-второй секунде загрузки содержимого входящих писем. Пробовала удалить приложение и переустановить заново.
    До этого была оценка 5 Mail×VK - это начало конца Еще больше рекламы. Уведомления от пульса, которые невозможно закрыть. Писать в службу поддержки не буду) компания загибается, и это хорошо)
    Я бы и минус один поставила, Я помню свой пароль и не могу уже долгое время войти на почту которой активно пользуюсь более 11 лет, из-за того что номер телефона который запрашивает мэил давно уже не!!!! существует, Этого номера украинского аператора у меня нет уже как 5 лет! Что за обсурт! На почте я храню свои документы, важные фото, переписки, кто это все вернет? Я не помню что бы хоть раз приложение запрашивало у меня номер телефона, что за тупые обновления
    Надоедливая реклама, которую убрать не возможно. До последнего обновления было лучше. Ещё несколько раз случайно ткань в эту рекламу и придётся отказываться от этого приложения, а может и от всё продуктов майл, так как владельцев похоже интересует только прибыль, а на пользователей наплевать.
    Уважаемые разработчики, Вы предлагаете написать в поддержку, но когда пытаешься это сделать выскакивает ошибка просмотра webview. Это что за издевательство такое? Решите уже наконец проблему, сколько уже было Вам писем, и никакого решения!
    Уже долгое время приложение не работает. Оно либо выдает окно с предложением обновить Android Webview, либо выдает стробоскопический эффект (экран начинает быстро мигать белым цветом). Android Webview уже обновился. Прошивка на S21 так же обновилась. А приложение по прежнему не работает. Отправить сообщение разработчику из приложения так же не возможно из-за этих ошибок. Письма соответственно так же не возможно поставить. В общем, добавили кучу функций которые не работают.
    Ув. Разработчики! Samsung S21Ultra 5G не работает. 12 Андроид. До последего обновления все работало хорошо, а сейчас "ошибка просмотра webview". Исправьте побыстрее, конкурентов много:). Написать напрямую разработчику нет возможности, приложение не работает. Пожалуйста не пишите про связь с разработчиком, а лучше подумайте, как помочь пользователям приложения и исправить ошибки.
    Приложение отправляет рекламу в уведомлениях телефона, и при этом это уведомление отсутствует в самой программе , или почте. Раньше этого не было. Удаляйте это приложение, а почту лучше проверить через встроенное приложение.
    Ну что же. Поздравляю товарищи. 2 недели ожидания решения проблем, а проблема даже не думает решаться. Писать никуда не буду, задрали уже, всю жизнь что ли разработчику писать? Итог: можете уже ничего не решать, вы очень хорошо поработали, чтоб я удалил ваше приложение и перешел на Яндекс.почту. всем советую, незачем это го....но держать и лишнюю память захламлять. Яндекс наше все)).
    Написали в службу поддержки о проблеме не открывания писем после обновления, пошла 2 неделя нет никакой реакции. Какую работу необходимо оценить, если ничего не сделано, почта так и не работает?
    Ну вы что, не понимаете, что все пользователи Samsung s 21, и возможно других девайсов на 12м андрюше не могу пользоваться приложением. Логи и пр ошибки не получается отправить тк приложение в процессе запуска тупо мерцает на изображении заставки
    Ждал обновления. Думал приложение всё таки заработает на 12 Андроиде и оболочке One UI 4.0, но не тут то было! По-прежнему вылетает. Даже зайти не могу. Тупо мерцание экрана с начальной заставкой.
    ...

    Данная моя приблуда работает через раз, я не смотрел причину. Скорее всего нужно проверять статус код ответа реквеста.

    На сайте jsonviewer.stack.hu можно удобно посмотреть структуру json:61cd9c0aca8c8860493418.png
    Ответ написан
    Комментировать
  • Как увеличить текст python?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Change console font in Windows
    С параметрами поиграйтесь:
    import ctypes
    
    LF_FACESIZE = 32
    STD_OUTPUT_HANDLE = -11
    
    class COORD(ctypes.Structure):
        _fields_ = [("X", ctypes.c_short), ("Y", ctypes.c_short)]
    
    class CONSOLE_FONT_INFOEX(ctypes.Structure):
        _fields_ = [("cbSize", ctypes.c_ulong),
                    ("nFont", ctypes.c_ulong),
                    ("dwFontSize", COORD),
                    ("FontFamily", ctypes.c_uint),
                    ("FontWeight", ctypes.c_uint),
                    ("FaceName", ctypes.c_wchar * LF_FACESIZE)]
    
    font = CONSOLE_FONT_INFOEX()
    font.cbSize = ctypes.sizeof(CONSOLE_FONT_INFOEX)
    font.nFont = 12
    font.dwFontSize.X = 11
    font.dwFontSize.Y = 66
    font.FontFamily = 54
    font.FontWeight = 400
    font.FaceName = "Lucida Console"
    
    handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)
    ctypes.windll.kernel32.SetCurrentConsoleFontEx(
            handle, ctypes.c_long(False), ctypes.pointer(font))
    
    print('Hello')

    61cb173bb1c4b990119506.png
    Ответ написан
    Комментировать
  • Почему программа на speedtest-cli выдает локацию сервера heroku а не моего устроства?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Все правильно, бот работает, что ещё нужно? Если нужно замерять скорость на конкретном устройстве, так и замеряйте её на конкретном устройстве, без ботов и прочей ереси.

    Хм, а как вы себе представляете измерение скорости через бота?
    Ответ написан
  • Можно ли как-то реализовать в телеграмм боте (на Python) чтобы при отправки сообщения пользователем, оно разбивалось на блоки?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Можно. В зависимости от введеных данных или split, или регулярные выражения. И этот вопрос не касается телеги.
    Ответ написан
    Комментировать
  • Не устанавливается библиотека easyocr, в чем проблема?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Вам же английским по красному указано - "fixing-conflicting-dependencies" - это значит, что нужно подчинить зависимости (возможно у вас установлены библиотеки(необязательно Python), которые конфликтуют между собой - но это не точно).

    В таком случае нужно первым делом перейти на сайт библиотеки, и прочитать инструкцию по установке (так как, что-то мне подсказывает, что вы смотрели "уроки" на YouTube по данной библиотеке.)

    https://github.com/JaidedAI/EasyOCR
    Вот что там написано:
    Note 1: For Windows, please install torch and torchvision first by following the official instructions here https://pytorch.org. On the pytorch website, be sure to select the right CUDA version you have. If you intend to run on CPU mode only, select CUDA = None.
    Не думаю, что вы проделали этот шаг.
    Ответ написан
    Комментировать
  • Как сделать топ по данным из таблици sqlite3?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Разумеется, поле Profit должно быть int:
    result = cursor.execute('SELECT * FROM Users ORDER BY Profit DESC').fetchall()
    
    for x in result:
    	print(x)

    ('US', '1', 100)
    ('US', '12', 98)
    ('IR', '9', 95)
    ('IR', '3', 90)
    ('IR', '8', 70)
    ('IR', '4', 56)
    ('IR', '15', 40)
    ('US', '13', 10)
    ('US', '5', 8)
    ('US', '2', 5)


    У вас в примере надеюсь опечатка:
    Country | UserID | Profit
    US        1         100
    US        12        98
    US        13        10 - Здесь
    IR        9         95
    IR        3         90
    IR        8         70
    Ответ написан
    1 комментарий
  • Как достать ссылку из content='link'?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    from bs4 import BeautifulSoup
    
    html = '<meta property="og:audio" content="https://freesound.org/data/previews/611/611605_1648170-lq.mp3" />'
    
    soup = BeautifulSoup(html,"lxml")
    mp3_url = soup.find('meta',property='og:audio').get('content')
    print(mp3_url)

    >>> https://freesound.org/data/previews/611/611605_1648170-lq.mp3
    Ответ написан
    Комментировать
  • Ошибка в Python import telebot как можно её решить?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    1) Понизить версию Python с 3.10 до 3.8 (или ниже).
    2) Заменить from collections import Mapping на from collections.abc import Mapping
    3) За такую постановку вопроса здесь бьют ногами!
    Ответ написан
  • Как исправить ошибку: ModuleNotFoundError: No module named 'telebot'?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    koles, значит среда разработки или блокнот не подхватил виртуальное окружение.
    Ответ написан
    1 комментарий