πŸ“– Как ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» XML Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простой способ

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» XML Π² Python, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ xml.etree.ElementTree.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:

import xml.etree.ElementTree as ET

# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» xml
tree = ET.parse('Ρ„Π°ΠΉΠ».xml')

# ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ элСмСнт
root = tree.getroot()

# Π”Π°Π»Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с элСмСнтами Ρ„Π°ΠΉΠ»Π°

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ parse() ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ xml.etree.ElementTree, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» xml ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄Π΅Ρ€Π΅Π²Π°. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ getroot() для получСния ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ элСмСнта Ρ„Π°ΠΉΠ»Π°.

ПослС этого ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ элСмСнтам Ρ„Π°ΠΉΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ всСх элСмСнтов с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Ρ‚Π΅Π³ΠΎΠΌ
elements = root.findall('Ρ‚Π΅Π³')

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ тСкста элСмСнта
text = element.text

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ значСния Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°
value = element.attrib['Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚']

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ XML Π² Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ xml.etree.ElementTree. Π£Π΄Π°Ρ‡ΠΈ Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ!

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» xml Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ! Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° XML с использованиСм языка программирования Python. XML (eXtensible Markup Language) - это ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для хранСния ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Ρ‹Π²Π°Π½ΠΈΠ΅ XML-Ρ„Π°ΠΉΠ»ΠΎΠ² часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Python прСдоставляСт ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ срСдства для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML. ΠœΡ‹ рассмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ использованиС стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Python ΠΈ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π²Π°ΡˆΡƒ Π·Π°Π΄Π°Ρ‡Ρƒ. ΠŸΠΎΠ΅Ρ…Π°Π»ΠΈ!

Π§Ρ‚Π΅Π½ΠΈΠ΅ XML-Ρ„Π°ΠΉΠ»Π° с использованиСм встроСнной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ElementTree

Python поставляСтся с встроСнной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ElementTree, которая прСдоставляСт простой ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML. Для Π½Π°Ρ‡Π°Π»Π°, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ:


import xml.etree.ElementTree as ET
    

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ нас Π΅ΡΡ‚ΡŒ XML-Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ "example.xml". Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Π΅Π³ΠΎ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ Π΅Π³ΠΎ содСрТимоС:


tree = ET.parse("example.xml")
root = tree.getroot()
    

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам XML-Ρ„Π°ΠΉΠ»Π°, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ Π½ΠΈΠΌ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Ρ‚Π΅Π³Π°. НапримСр, Ссли Ρƒ нас Π΅ΡΡ‚ΡŒ элСмСнт "name" Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ элСмСнтС, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:


name = root.find("name").text
print(f"Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта 'name': {name}")
    

Π­Ρ‚ΠΎ лишь ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ElementTree. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ findall() ΠΈ iter(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ элСмСнтам ΠΈ ΠΈΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌ. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ElementTree Ρ‚Π°ΠΊΠΆΠ΅ позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ XML-Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ.

Π§Ρ‚Π΅Π½ΠΈΠ΅ XML-Ρ„Π°ΠΉΠ»Π° с использованиСм стороннСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ lxml

ΠšΡ€ΠΎΠΌΠ΅ встроСнной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ElementTree, ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ стороннСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ lxml для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML-Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π² Python. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° lxml являСтся Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΎΠΉ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ElementTree, ΠΎΠ΄Π½Π°ΠΊΠΎ для Π΅Π΅ использования Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° pip:


pip install lxml
    

ПослС установки ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ lxml:


import lxml.etree as ET

tree = ET.parse("example.xml")
root = tree.getroot()

name = root.find("name").text
print(f"Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта 'name': {name}")
    

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ lxml ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ‚Π΅ ΠΆΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ElementTree. Однако, Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с XML, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° lxml ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ большС возмоТностСй ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с XML-Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Π­Ρ‚ΠΈ Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ основныС способы чтСния XML-Ρ„Π°ΠΉΠ»ΠΎΠ² с использованиСм Python. Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅ΠΆΠ΄Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ ElementTree ΠΈ lxml зависит ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… потрСбностСй ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΉ. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΡ€ΠΈ нСобходимости ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² свой ΠΊΠΎΠ΄.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы чтСния XML-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Python. ΠœΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ с использования встроСнной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ElementTree ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ значСния элСмСнтов XML. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ рассмотрСли использованиС стороннСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ lxml для Π±ΠΎΠ»Π΅Π΅ слоТных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с XML-Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Π’Ρ‹Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ зависит ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, поэтому рассмотритС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Π΅ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠ΅Ρ€Π΅Π΄ принятиСм Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Ρ‡Ρ‚Π΅Π½ΠΈΠΈ XML-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Python!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Python Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… β„–4. Π˜ΠΌΠΏΠΎΡ€Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ† XML

Python: основы ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ / XML, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ElementTree, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° lxml (шаг 1)

КАК Π‘ΠžΠ—Π”ΠΠ’Π¬ XML-ЀАЙЛ НА PYTHON?

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ’‘ Как ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠŸΠΈΡ‚ΠΎΠ½: пошаговоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… πŸ“š

πŸ”₯ Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с прокси Π² Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для успСха

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ID Π³Ρ€ΡƒΠΏΠΏΡ‹ Π’ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python? πŸ”πŸ

πŸ“– Как ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» XML Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простой способ

πŸ•’ Как ΡƒΠ·Π½Π°Ρ‚ΡŒ врСмя ΠΏΠΎ МБК с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python?

😱 Как Π΄ΡƒΠ΄ΠΎΡΠΈΡ‚ΡŒ Π½Π° Python: ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π³Π°ΠΉΠ΄ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… πŸ’»

πŸ” Как ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ тСкст Π² Python: простой ΠΈ эффСктивный способ