tak.lol
02 декабрь 2024
7
0
Не нравится 0 Нравится

Архивариус

Давай поговорим о том, как стать настоящим архивариусом в мире программирования. Не пугайся, это не так скучно, как звучит! Архивариус — это не просто человек, который хранит старые бумажки в пыльных ящиках. Это тот, кто умеет работать с данными, организовывать их и извлекать из них полезную информацию. И мы будем делать это с помощью Python! Готов? Поехали!



1. Кто такой архивариус в программировании?


Архивариус — это специалист, который умеет работать с данными: собирать, хранить, обрабатывать и извлекать из них полезную информацию. В нашем случае мы будем работать с файлами, базами данных и даже веб-страницами. Звучит интересно? Давай посмотрим, как это сделать!



2. Работа с файлами


Начнем с самого простого — работы с файлами. В Python это делается легко. Например, ты можешь создать текстовый файл и записать в него что-то важное:




with open('archive.txt', 'w') as file:
    file.write('Это мой первый архив!')


Теперь представь, что ты хочешь прочитать этот файл и узнать, что же ты там записал:




with open('archive.txt', 'r') as file:
    content = file.read()
    print(content)


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




try:
    with open('archive.txt', 'r') as file:
        content = file.read()
except FileNotFoundError:
    print("Файл не найден! Может быть, его унесли в другой архив?")


3. Работа с форматами данных


Когда ты станешь настоящим архивариусом, ты столкнешься с различными форматами данных: JSON, CSV и даже XML. Начнем с JSON — популярного формата для обмена данными.




import json

data = {
    'имя': 'Архивариус',
    'возраст': 5,
    'умения': ['собирать данные', 'анализировать', 'организовывать']
}

#Сохраняем данные в JSON файл

with open('archive.json', 'w') as json_file:
    json.dump(data, json_file)

#Читаем данные из JSON файла

with open('archive.json', 'r') as json_file:
    loadeddata = json.load(jsonfile)
    print(loaded_data)


Забавный факт: JSON был создан в 2001 году и до сих пор остается одним из самых популярных форматов для обмена данными. Как видишь, архивариусам всегда нужно быть в курсе последних тенденций!



4. Парсинг данных из веба


Теперь давай перейдем к более интересной части — парсингу данных из веба! Это как охота за сокровищами, только вместо золота ты ищешь полезные данные.



С помощью библиотеки BeautifulSoup мы можем извлекать ссылки из веб-страниц. Вот пример:




import requests
from bs4 import BeautifulSoup

url = 'https://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

#Извлекаем все уникальные ссылки

links = {a['href'] for a in soup.find_all('a', href=True)}
print(links)


Эта маленькая программа отправляет запрос на сайт и извлекает все ссылки. Представь себе — ты теперь настоящий веб-архивариус! Но будь осторожен: некоторые сайты могут не любить, когда их «архивируют». Всегда проверяй правила использования!



5. Хранение данных


После того как ты собрал все свои данные, их нужно где-то хранить. Базы данных — это идеальное решение! С помощью SQLite можно легко создать базу данных прямо из Python:




import sqlite3

#Создаем или открываем базу данных

conn = sqlite3.connect('archive.db')
cursor = conn.cursor()

#Создаем таблицу

cursor.execute('''
CREATE TABLE IF NOT EXISTS records (
    id INTEGER PRIMARY KEY,
    name TEXT,
    value TEXT
)
''')

#Вставляем данные

cursor.execute("INSERT INTO records (name, value) VALUES (?, ?)", ('Архив', 'Ценность'))

#Сохраняем изменения и закрываем соединение

conn.commit()
conn.close()


Теперь у тебя есть база данных для хранения всех твоих архивационных сокровищ! И помни: хороший архивариус всегда делает резервные копии своих данных!



6. Заключительные мысли


Стать архивариусом в мире программирования — это не только интересно, но и очень полезно. Ты научился работать с файлами, форматами данных, парсить веб-страницы и хранить информацию в базах данных. Так что вперед, собирай свои данные и становись мастером архивации!



И помни: даже если твой код иногда будет вести себя как капризный ребенок, не отчаивайся! Главное — это практика и желание учиться. Удачи тебе в твоем пути к званию Архивариуса!



Задание 1: Работа с текстовыми файлами
Создайте программу, которая запрашивает у пользователя несколько строк текста и записывает их в текстовый файл user_input.txt. После этого программа должна прочитать файл и вывести его содержимое на экран.

Задание 2: Работа с JSON
Напишите программу, которая создает словарь с информацией о ваших любимых книгах (название, автор, год издания). Сохраните этот словарь в файл books.json. Затем напишите код, который считывает данные из этого файла и выводит информацию о каждой книге на экран.

Задание 3: Парсинг веб-страницы
Используя библиотеку requests и BeautifulSoup, напишите программу, которая извлекает заголовки всех статей с главной страницы новостного сайта (например, https://news.ycombinator.com/). Выведите все заголовки на экран.

Задание 4: Работа с базами данных
Создайте базу данных SQLite для хранения информации о фильмах. Таблица должна содержать поля: id, title, director, year. Напишите программу, которая добавляет несколько фильмов в базу данных и затем выводит все записи из таблицы.

Задание 5: Объединение всех навыков
Создайте программу, которая выполняет следующие действия:
1. Запрашивает у пользователя информацию о трех своих любимых фильмах (название, режиссер, год).
2. Сохраняет эту информацию в JSON-файл favorite_movies.json.
3. Загружает данные из этого файла и выводит их на экран.
4. Сохраняет информацию о фильмах в базу данных SQLite, как описано в задании 4.

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