Разделы презентаций


Программирование и разработка веб-приложений

Содержание

Вид XML файла

Слайды и текст этой презентации

Слайд 1Программирование и разработка веб-приложений
Использование Python для работы с XML

Программирование и разработка веб-приложенийИспользование Python для работы с XML

Слайд 2Вид XML файла

Вид XML файла

Слайд 3Основные модули для парсинга
from xml.dom import minidom
from xml.etree import ElementTree
#import

xml.etree.ElementTree as ET


Основные модули для парсингаfrom xml.dom import minidomfrom xml.etree import ElementTree#import xml.etree.ElementTree as ET

Слайд 4Работа с файлом
XML_FILE='sample3.xml'
tree = ET.ElementTree(file=XML_FILE)

tree=ET.parse('sample3.xml')

file01=open('books.xml','r')
tree=ElementTree.parse(file01)

xmldoc=minidom.parse('books.xml')

Работа с файломXML_FILE='sample3.xml'tree = ET.ElementTree(file=XML_FILE)tree=ET.parse('sample3.xml')file01=open('books.xml','r')tree=ElementTree.parse(file01)xmldoc=minidom.parse('books.xml')

Слайд 5Парсинг XML файла
from xml.dom import minidom
xmldoc=minidom.parse('books.xml')
a_list=xmldoc.getElementsByTagName('person')
print(len(a_list))
print(a_list[0].attributes['name'].value)
for i in a_list:
print(i.attributes['name'].value)
Использование

xml.dom

Парсинг XML файлаfrom xml.dom import minidomxmldoc=minidom.parse('books.xml')a_list=xmldoc.getElementsByTagName('person')print(len(a_list))print(a_list[0].attributes['name'].value)for i in a_list:	 	print(i.attributes['name'].value)Использование xml.dom

Слайд 6Распарсить строку
from xml.dom import minidom
f = minidom.parseString('''








''')

Использование xml.dom

Распарсить строку from xml.dom import minidomf = minidom.parseString('''

Слайд 7a = f.getElementsByTagName('Book') #взятие элементов по тегу
name=[]
author=[]
pers=[]
for i in a:

name.append(i.getAttribute('name'))
#добавление атрибутов в список
author.append(i.getAttribute('author'))
pers.append(i.getAttribute('pers'))

a = f.getElementsByTagName('Book') #взятие элементов по тегуname=[]author=[]pers=[]for i in a:  	name.append(i.getAttribute('name')) 	#добавление атрибутов в список	author.append(i.getAttribute('author'))

Слайд 8Просмотр корня дерева
from xml.etree import ElementTree
file01=open('books.xml','r')
tree=ElementTree.parse(file01)
print(tree)
root=tree.getroot()
print(root)
print(root.tag)
print(root.attrib)
print(root.text)
ElementTree

Просмотр корня дереваfrom xml.etree import ElementTreefile01=open('books.xml','r')tree=ElementTree.parse(file01)print(tree)root=tree.getroot()print(root)print(root.tag)print(root.attrib)print(root.text)ElementTree

Слайд 9Просмотр тегов и атрибутов
for i in root:
print(i.tag,

i.attrib)
print(root[0][0].text)

for i in root:
for j in i:
print(j.tag,j.attrib)
Если не работает -

смотрите кодировку xml
Просмотр тегов и атрибутов for i in root:  	print(i.tag, i.attrib)	print(root[0][0].text)for i in root:		for j in i:				print(j.tag,j.attrib)Если

Слайд 10Просмотр тегов корня
from xml.etree import ElementTree
file01=open('books.xml','r')
tree=ElementTree.parse(file01)
#tree=ElementTree.ElementTree(file='books.xml')
root=tree.getroot()
print(root)
print(root.tag)
print(root.attrib)
print(root.text)
for i in root.iterfind('.'):
print(i.tag)

Просмотр тегов корняfrom xml.etree import ElementTreefile01=open('books.xml','r')tree=ElementTree.parse(file01)#tree=ElementTree.ElementTree(file='books.xml')root=tree.getroot()print(root)print(root.tag)print(root.attrib)print(root.text)for i in root.iterfind('.'):		print(i.tag)

Слайд 11Проход по свойствам корня
root=tree.getroot()
for i in root:
print(i.tag, i.attrib)

Проход по свойствам корняroot=tree.getroot()for i in root:		print(i.tag, i.attrib)

Слайд 12Просмотр, используя keys и items
for i in root:
print(i.tag,i.keys(),i.items())

Просмотр, используя keys и itemsfor i in root:		print(i.tag,i.keys(),i.items())

Слайд 13keys и items с итератором по root
for i in root.iter():
print(i.tag,

i.keys(),i.items(),i.text)

keys и items с итератором по rootfor i in root.iter():	print(i.tag, i.keys(),i.items(),i.text)

Слайд 14Использование итератора для просмотра сведений
for i in root.iter('book'):
print(i.tag, i.keys(),i.items(),i.text)

Использование итератора для просмотра сведений for i in root.iter('book'):		print(i.tag, i.keys(),i.items(),i.text)

Слайд 15Использование итератора поиска
for i in root.iterfind('.'):
print(i.tag)

Использование итератора поискаfor i in root.iterfind('.'):		print(i.tag)

Слайд 16for i in root.iterfind('.//'):
print(i.tag)

for i in root.iterfind('.//'):	print(i.tag)

Слайд 17for i in root.iterfind('./book//'):
print(i.tag)

for i in root.iterfind('./book//'):	print(i.tag)

Слайд 18Использование итератора для просмотра сведений
for i in tree.iter('person'):
print(i.attrib)

Использование итератора для просмотра сведений for i in tree.iter('person'):		print(i.attrib)

Слайд 19Одиночны поиск и поиск всех информации
for i in root.findall('book'):
bookpages=i.find('pages').text


bookpersons=i.findall('person')
name=i.get('name')
print(name)
print(bookpages)
print(bookpersons)

Одиночны поиск и поиск всех информацииfor i in root.findall('book'): 	bookpages=i.find('pages').text 	bookpersons=i.findall('person')	name=i.get('name')	print(name)	print(bookpages)	print(bookpersons)

Слайд 20Запись
#iter ищет среди потомков number
for i in root.iter('number'):
new_number=int(i.text)+1
i.text=str(new_number)
i.set('updated','2017')
tree.write('books2.xml')

Запись #iter ищет среди потомков numberfor i in root.iter('number'):		new_number=int(i.text)+1		i.text=str(new_number)	i.set('updated','2017')	tree.write('books2.xml')

Слайд 21Поиск и удаление
for i in root.findall('book'):
pages=int(i.find('pages').text)
print(pages)
if pages >100:
root.remove(i)

Поиск и удаление for i in root.findall('book'):		pages=int(i.find('pages').text)		print(pages)	if pages >100:				root.remove(i)

Слайд 22Проход по дереву и обновление значений
book=ElementTree.Element('book')
number=ElementTree.SubElement(book,'number')
year=ElementTree.SubElement(book,'year').set('year','2017')
pages=ElementTree.SubElement(book,'pages').set('pages','100')
number.set('pages','50')
ElementTree.dump(book)

Проход по дереву и обновление значенийbook=ElementTree.Element('book')number=ElementTree.SubElement(book,'number')year=ElementTree.SubElement(book,'year').set('year','2017')pages=ElementTree.SubElement(book,'pages').set('pages','100')number.set('pages','50')ElementTree.dump(book)

Слайд 23book=ElementTree.Element('book')
number=ElementTree.SubElement(book,'number')
year=ElementTree.SubElement(book,'year').set('year','2017')
pages=ElementTree.SubElement(book,'pages').set('pages','100')
number.set('pages','50')
root.append(book)

book=ElementTree.Element('book')number=ElementTree.SubElement(book,'number')year=ElementTree.SubElement(book,'year').set('year','2017')pages=ElementTree.SubElement(book,'pages').set('pages','100')number.set('pages','50')root.append(book)

Слайд 24Если файл доступен по ссылке
from urllib.request import urlopen
import xml.etree.ElementTree as

ET
z= urlopen("https://courses.openedu.ru/asset-v1:ITMOUniversity+PWADEV+spring_2017+type@asset+block@sample3.xml", timeout=10)
tree=ET.parse(z)

Если файл доступен по ссылкеfrom urllib.request import urlopenimport xml.etree.ElementTree as ETz= urlopen(

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика