上节内容回顾、XML
一、__name__
- __name__作用:如果等于__main__
- dirname 作用:
import os,sys
temp = os.path.dirname(__file__)
b = "bin"
new_path = os.path.join(temp,b)
sys.path.append(new_path)
#添加chen这个路径 import os,sys sys.path.append(os.path.join(os.path.dirname(__file__) ,'chen')) print(sys.path)
二、urllib,模块requests
发起http请求,获取请求返回值
第三方安装方式:源码,pip3
#json、xml、HTML
三、xml
- XML,处理XML格式的数据
1、解析
2、操作
3、重新写入文件
4、创建XML
四、json
- loads 字符串转换成列表、字典 。字典里面必须是双引号。
- load 文件路径=>读取内容=》列表、字典
- dumps 列表-》字符串
- dump 列表-》字符串-》文件
XML给本地XML文件添加新节点
from xml.etree import ElementTree as ET tree = ET.parse('first.xml') #打开文件 root = tree.getroot() son = root.makeelement('tt',{"kk":'vv'}) #创建一个新节点,Element 类型 root.append(son) tree.write('first.xml', short_empty_elements=False) #写入文件,默认自闭合方式。加上short_empty_elements=False,标签没有内容的时候不用自闭合。
XML 新建节点里面再新建节点
from xml.etree import ElementTree as ET tree = ET.parse('first.xml') root = tree.getroot() #获取根节点 son = root.makeelement('tt',{"kk":'vv'}) #创建一个新节点 s = son.makeelement('bb', {"ee": "aa"}) #创建第二个节点 root.append(son) #加入父节点下 son.append(s)#加入孙子节点下 tree.write('first.xml') #写入文件,默认自闭合方式。加上short_empty_elements=False,标签没有内容的时候不用自闭合。
XML创建节点第二种方法:
from xml.etree import ElementTree as ET ele = ET.Element("family", {"age":"18"}) #创建跟节点 tree = ET.ElementTree(ele) tree.write("frist.xml")
from xml.etree import ElementTree as ET root = ET.Element("family", {"age":"18"})#创建根节点 son = ET.Element("family", {"age":"1"}) root.append(son) #把son加入根节点 tree = ET.ElementTree(root) #创建tree用于写进文档,要用根节点创建tree tree.write("frist.xml") #写入frist.xml文件
XML创建节点第三种方法:
from xml.etree import ElementTree as ET root = ET.Element("family", {"age":"18"}) # son = ET.Element("family", {"age":"1"}) # root.append(son) #把son加入根节点 ET.SubElement(root, "family", {"age":"1"}) #SubElement( tree = ET.ElementTree(root) #创建tree用于写进文档,要用根节点创建tree tree.write("frist.xml") #写入frist.xml文件
from xml.etree import ElementTree as ET root = ET.Element("family", {"age":"18"}) # son = ET.Element("family", {"age":"1"}) # root.append(son) #把son加入根节点 ET.SubElement(root, "family", {"age":"1"}) #SubElement( son = ET.SubElement(root, "family", {"age":"1"}) ET.SubElement(son, "family", {"age":"1"}) tree = ET.ElementTree(root) #创建tree用于写进文档,要用根节点创建tree tree.write("frist.xml") #写入frist.xml文件
from xml.etree import ElementTree as ET root = ET.Element("family", {"age":"18"}) # son = ET.Element("family", {"age":"1"}) # root.append(son) #把son加入根节点 ET.SubElement(root, "family", {"age":"1"}) #SubElement( son = ET.SubElement(root, "family", {"age":"中国"}) ET.SubElement(son, "family", {"age":"1"}) tree = ET.ElementTree(root) #创建tree用于写进文档,要用根节点创建tree tree.write("frist.xml", encoding='utf-8',xml_declaration=True) #写入frist.xml文件,有中文需要加encoding='utf-8') # xml_declaration=True)在文件中第一行加入注释
from xml.dom import minidom #写xml文件时有缩进
总结:XML
1、解析文件有两种方法
tree,ElementTree ,
Root节点 Element ,
2、操作
Element:
tag , text , find , iter , get , set……
3、重新写入文件
tree.write(xx,encoding="utf-8")
str 没有tree 需要创建tree tree = ElementTree(root)
4、创建XML
Element(xx,xx,)
5、缩进
6、命名空间
++++++++重要+++++++
1、一切事物皆对象 "alex" 123

浙公网安备 33010602011771号