• Как заставит тг бота сохранять сброшенный ему файл в json формате?

    OhMySenpai
    @OhMySenpai
    Начинающий программист
    Проблема заключается в том, что вы пытаетесь сохранить файл в формате JSON, используя метод download_to_drive(), который сохраняет файл в бинарном формате. Вместо этого вам нужно прочитать содержимое файла в виде текста и сохранить его в формате JSON.

    Вот как можно изменить функцию downloader_json(), чтобы сохранить содержимое файла в формате JSON:
    import json
    
    async def downloader_json(update, context):
        file = await context.bot.get_file(update.message.document)
        downloaded_file = await file.download()
    
        with open('items.json', 'w') as f:
            content = await downloaded_file.read()
            json.dump(content.decode('utf-8'), f)
    Ответ написан
    Комментировать
  • Как сделать так, чтобы selenium webdriver использовал мои аккаунты?

    Denkuwus
    @Denkuwus
    15 y.o
    from selenium import webdriver
    from selenium.webdriver.common.by import By
    
    # Запустить браузер, я указал хром
    driver = webdriver.Chrome()
    
    # Перейти на страницу стим
    driver.get('https://steamcommunity.com/login/home/')
    
    # Найти элементы формы входа(ниже будет мини гайд)
    username_field = driver.find_element(By.ID, 'steamAccountName')
    password_field = driver.find_element(By.ID, 'steamPassword')
    login_button = driver.find_element(By.ID, 'SteamLogin')
    
    # Вводим свои данные
    username_field.send_keys('YOUR_USERNAME')
    password_field.send_keys('YOUR_PASSWORD')
    
    # Нажать на кнопку войти
    login_button.click()
    
    # Дождаться завершения процесса входа в систему
    # Возможно, придется настроить время ожидания в зависимости от скорости соединения
    time.sleep(5)
    
    # Сохранить куки
    cookies = driver.get_cookies()
    
    # Закрыть браузер
    driver.close()


    После того как куки были сохранены, их можно уже юзать для входа. Для этого можно использовать метод add_cookie класса webdriver.Chrome, чтобы добавить сохраненные файлы cookie в браузер перед переходом на нужную страницу.

    from selenium import webdriver
    
    # Запуск браузера
    driver = webdriver.Chrome()
    
    # Добавить наши сохраненные куки в браузер
    for cookie in cookies:
        driver.add_cookie(cookie)
    
    # Перейти на сайт
    driver.get('https://steamcommunity.com/market/')
    
    # Теперь при входе, страница должна быть авторизована


    Мини гайд на элементы форма входа:

    Открыть страницу входа в Steam в веб-браузере.
    Щелкнуть правой кнопкой мыши форму входа и выбрать «Проверить» или «Проверить элемент» в контекстном меню.
    Окно инструментов разработчика должно открыться и выделить выбранный элемент в HTML-коде.
    Найдите атрибут id элемента в коде HTML.

    Например, чтобы найти атрибут id поля имени пользователя, можно найти тег ввода, который представляет поле, и найти атрибут id в теге:

    <input type="text" class="input_text login_input_text" name="username" id="steamAccountName" placeholder="Username" tabindex="1">


    В этом примере атрибутом id поля имени пользователя является steamAccountName.

    И тем самым нужно использовать аналогичный процесс, чтобы найти атрибуты id других элементов формы входа, таких как поле пароля и кнопка входа.
    Ответ написан
    Комментировать
  • Почему тг бот обрезает сообщение?

    SERGK393
    @SERGK393
    Программист
    Попробуй вот так
    def snd_msg(url1):
     token1 = str(token)
     params = {
        "chat_id": chat_id,
        "text": url1,
     }
     results = requests.get(
        "https://api.telegram.org/bot{}/sendMessage".format(token1),
        params=params
     )
     print('СООБЩЕНИЕ ОТПРАВЛЕНО')
    Ответ написан
    Комментировать
  • Почему выдается ошибка при создании двумерного массива?

    Maksim_64
    @Maksim_64
    Data Analyst
    Запятую пропустил.
    ID = [[42080, 36039, 35505, 33824, 762074],
          ['2.1', '3.78', '4.2', '2.1', '2.8']
         ]
    Ответ написан
    Комментировать
  • Почему вылетает с ошибкой и как исправить?

    @AlbertForest
    Ты разбираешь строку как json объект

    Вот так надо
    response = requests.get("""https://steamcommunity.com/market/listings/730/AK-47%20%7C%20Asiimov%20(Field-Tested)/render/?query=&start=0&count=100&country=BY&language=english&currency=1""")
    link = response.json()
    print(link['assets']['730']['2']['27405178623']['actions'][0]['link'])
    Ответ написан
    Комментировать