Немного юмора в ленту
Канал Телеграм
Канал на Дзен
Канал Телеграм
Канал на Дзен
В этом уроке мы научимся подключаться и работать с базой данных SQLite.
Эта база данных была выбрана по причине ее простоты настройки и использования. В точно таком же формате на подобии SQLite вы научитесь подключаться к любой другой базе данных, что поддерживает язык python. Это может быть MySQL, PostgreSQL, Oracle, MongoDB и многие другие. Если ваш сайт работает MySQL, то вы легко можете скачать коннектор для питона и подключиться к вашей базе данных. Далее вы сможете выводить ту же информацию, что выводили на сайте.
Первое что нам надо сделать это подключить базу данных к нашему проекту. Сама по себе база данных SQLite является встроенной базой данных для языка python, а поэтому нам ничего не нужно дополнительно скачивать, мы сразу можем ее подключить. Для этого прописываем import sqlite3.
Теперь давайте создадим обработчик команды /start, после запуска которой у нас будет создаваться база данных SQLite.Сначала пропишем декоратор для обработки команды /start(@bot.message_handler(commands =['start'])). Здесь же мы создаем функцию, например, first. Эта функция будет также принимать параметр message. Теперь давайте выполним создания базы данных. Для этого мы создаем некий новый объект, например, con. Далее обращаемся к нашей библиотеке sqlite3 и через нее обращаемся к функции connect. В эту функцию нужно передать один параметр. По сути это название того файла, который у нас будет создан и где будет храниться полностью вся база данных. Сам файл может называться как угодно, а еще он может имеет абсолютно любое расширение(например, sql, sdf). Теперь у нас будет создаваться файл, и в этом файле будет храниться полностью вся база данных о наших пользователях. Теперь нам нужно создать еще один объект, например, cur. Через него мы и сможем выполнять различные команды, связанные с базой данных. Чтобы его создать мы обращаемся к нашему предыдущему объекту и вызываем такую функцию, как cursor. Теперь мы можем создавать необходимый нам файл, в котором у нас будет храниться вся база данных.
Теперь давайте создадим в нашей базе данных таблицу, которую в последствии мы будем записывать неких пользователей.
Чтобы создать таблицу, нам нужно выполнить некую sql команду, поэтому мы сразу пропишем метод execute(данный метод позволяет выполнять разные sql команды). Здесь же мы пропишем полностью нашу команду. Мы говорим что хотим создать некую таблицу, но при этом мы будем создавать ее только в случае, если ее еще не существует. Мы будем создавать такую таблицу как users. И далее мы просто пропишем те поля, которые будут внутри самой таблице. Я укажу такие поля, как:
id(это будет уникальным идентификатором для каждой нашей записи).Так как это поле будет целым числом, то мы указываем тип данных int, оно будет автоматически изменяться и оно дополнительно является первичным ключом(primary key). То есть это стандартное поле, которое должно быть в любой таблице базы данных. За счет этого поля мы сможем выбирать конкретные записи и взаимодействовать с ними(id int auto_increment primary key).
name(это будет имя нашего пользователя). Тип этого поля будет varchar(varchar - это строковый или символьный тип данных переменного размера). Длину этого поля мы возьмем, как 50 символов(name varchar(50)).
VALUE(это будет деньги, имеющиеся на счету нашего пользователя). Так же укажем тип varchar, длина которого будет тоже 50 символов(VALUE varchar(50))
Ну и суть этой команды заключается в том, что при запуске команды /start мы будем создавать таблицу users с тремя полями id, name, VALUE, и она будет создаваться только в том случае, если такой таблицы еще не существует в нашем файле с базой данных. Сейчас наша команда execute она еще не выполнит создание нашей таблицы. То есть она подготавливает sqlite команду. Чтобы нам выполнить создание таблицы, и чтобы она была добавлена в файл с базой данных, нам необходимо обратиться к объекту con, и здесь мы должны прописать такую функцию, как commit(эта функция синхронизирует все изменения) и теперь все наши изменения будут сохраняться в базе данных. Давайте еще допишем, что мы будем закрывать соединение с базой данных. Таким образом при запуске команды /start мы открываем соединение с базой данных, выполняем некую команду и синхронизируем ее, а дальше мы закрываем соединение с базой данных. В конце же давайте же будем выводить сообщение пользователю(bot.send_message(message.chat.id, 'Привет! Напиши свое имя'). Далее давайте зарегистрируем следующую функцию, которая должна у нас срабатывать. Для регистрации метода напишем bot.register_next_step_handler(). В эту функцию мы передаем параметр message, а также указываем какая следующая функция у нас будет срабатывать.
Получается у нас как только пользователь введет свое имя, то будет срабатывать следующая функция.
Эта функция будет также принимать один параметр message. B самой функции мы должны получать тот текст, который был введен пользователем и записывать его в некую переменную. Поэтому создадим в функции некую переменную, например, name. Тут мы обращаемся к message.text.strip() (функция strip позволяет удалить нам пробелы до и после текста). И теперь давайте также создадим текст, который будет получать наш пользователь. В этой функции мы получили имя пользователя и записали его в переменную name, и отправили пользователю текстовое сообщение.
Дальше мы по сути создаем похожу функцию, только с другим именем и сохранять счет мы будем в переменной value, после чего отправлять текст с тем, что пользователь зарегистрирован.
Давайте запустим программу и посмотрим что у нас получилось. После запуска программы у нас появляется наша созданная папка, где и храниться наша база данных. Теперь когда пользователь будет писать имя и счет, то программа будет автоматически сохранять их в базу данных.
Также если вы не хотите долго ждать, то все уроки и коды с уроков уже есть в моем telegram канале.
Также каждый день в telegram канале появляются полезные книги и пособия с материалом по программированию, а также выходят эффективные фишки, которые значительно упрощают вашу работу с программированием.
Для парсинга можно использовать нейронные сети :) См. картинку.
Берем капчу, кидаем в chatGPT по API и просим решить :) Звучит, конечно, слегка бредово, но а если развернуть подобную нейронку на своих серверах? Что скажете? Я бы потестировал на Яндекс.Маркете - там вообще сложно парсить...
p.s. на картинке GPT попросили решить капчу - справилась :)
Русский ИТ бизнес (https://t.me/bezsmuzi)
Автор: Джуст Виссер
Год: 2017
Количество страниц: 183
❓Вы когда-нибудь ощущали разочарование, работая с чужим кодом? Сегодня трудности сопровождения исходного кода представляют важную проблему разработки программного обеспечения, приводящую к дорогостоящим срывам сроков и ошибкам. Подключайтесь к ее решению. Данное практическое руководство познакомит вас с 10 простыми рекомендациями, помогающими писать программное обеспечение, которое легко поддерживать и адаптировать. Эти тезисы сформулированы на основании анализа сотен реальных систем.
Написанная консультантами компании Software Improvement Group (SIG), книга содержит ясные и краткие советы по применению рекомендаций на практике. Примеры для этого издания написаны на языке Java, но существует аналогичная книга с примерами на языке C#.
Для всех поклонников футбола Hisense подготовил крутой конкурс в соцсетях. Попытайте удачу, чтобы получить классный мерч и технику от глобального партнера чемпионата.
А если не любите полагаться на случай и сразу отправляетесь за техникой Hisense, не прячьте далеко чек. Загрузите на сайт и получите подписку на Wink на 3 месяца в подарок.
Реклама ООО «Горенье БТ», ИНН: 7704722037
Автор: Жуков Р.
Год: 2019
Количество страниц: 218
🐍Учебное пособие посвящено теоретическому и практическому изучению современного широко используемого языка программирования Python. Состоит из пяти глав, в которых последовательно рассмотрены такие вопросы, как история языков программирования, особенности и основные элементы языка программирования Python (типы данных; инструкции, функции, модули; объектно-ориентированное программирование; разработка графических интерфейсов).