模块urllib requests json xml configparser 学习笔记
发起http请求 获取返回值 返回值是字符串
第三方模块安装 pip install requests
返回值格式 xml html jaon
json
功能 loads 字符串》》》列表 字典 字符串里面必须是“”,因为其他的编程语言字符串都是“”
dups 列表》》》字符串
xml
from xml.etree import ElementTree as ET
tree = ET.parse('1.xml')
root = tree.getroot()
print(type(root))
# root <class 'xml.etree.ElementTree.Element'>
# dir(Element):
# append', 'attrib', 'clear', 'extend', 'find', 'findall', 'findtext', 'get', 'getchildren', 'getiterator', 'insert', 'items', 'iter', 'iterfind', 'itertext', 'keys', 'makeelement', 'remove', 'set', 'tag', 'tail', 'text'
from xml.etree import ElementTree as ET
tree = ET.parse('1.xml')
#ET.parse(添加文件路径) ET.Element(文件节点,Element对象)
root = tree.getroot() son = root.makeelement("dat",{"k1":"k2"}) root.append(son) s = son.makeelement("tt",{"ks":"vs"}) son.append(s) tree.write("1.xml")
#添加子节点 孙子节点
添加子节点 孙子节点
from xml.etree import ElementTree as ET
tree = ET.parse('1.xml')
root = tree.getroot()
son = ET.Element("dat",{"k1":"k2"})
root.append(son) tree.write("1.xml")
#直接根据类Element创建节点
直接根据类Element创建节点
from xml.etree import ElementTree as ET
tree = ET.parse('1.xml')
print(tree,type(tree))
from xml.etree.ElementTree import ElementTree #用pychrm查找类ElementTree
#1 方法paese就是 调用ElementTree类 创建对象
#2 方法getroot 获取xml跟节点
#3 方法write 将创建的在内存的子节点 写入文件
#创建XML文档1
from xml.etree import ElementTree as ET
root = ET.Element("famliy")
son1 = ET.Element('son',{'name':"er1"})
son2 = ET.Element('son',{'name':"er2"})
root.append(son1)
root.append(son2)
sun1 = ET.Element('sun',{'name':"s1"})
sun2 = ET.Element('sun',{'name':"s2"})
son1.append(sun1)
son2.append(sun2)
tree = ET.ElementTree(root)
tree.write('1.xml')
# 创建XML文档2
from xml.etree import ElementTree as ET root = ET.Element('famliy')
son1 = ET.SubElement(root,'sun',attrib={'name':"s1"})
son2 = ET.SubElement(root,'sun',attrib={'name':"s2"})
root.append(son1)
root.append(son2)
tree = ET.ElementTree(root)
tree.write('2.xml',encoding='utf-8')
# 创建XML文档3
from xml.etree import ElementTree as ET # 创建根节点
root = ET.Element("famliy") # 创建大儿子
# son1 = ET.Element('son', {'name': '儿1'})
son1 = root.makeelement('son', {'name': '儿1'})
# 创建小儿子
# son2 = ET.Element('son', {"name": '儿2'})
son2 = root.makeelement('son', {"name": '儿2'}) # 在大儿子中创建两个孙子
# grandson1 = ET.Element('grandson', {'name': '儿11'})
grandson1 = son1.makeelement('grandson', {'name': '儿11'})
# grandson2 = ET.Element('grandson', {'name': '儿12'})
grandson2 = son1.makeelement('grandson', {'name': '儿12'}) son1.append(grandson1)
son1.append(grandson2) # 把儿子添加到根节点中
root.append(son1)
root.append(son1) tree = ET.ElementTree(root)
tree.write('oooo.xml',encoding='utf-8', short_empty_elements=False) 创建方式(二)
#带缩进的创建xml
from xml.etree import ElementTree as ET root = ET.Element('famliy')
son1 = ET.SubElement(root,'sun',attrib={'name':"s1"})
son2 = ET.SubElement(root,'sun',attrib={'name':"s2"})
root.append(son1)
root.append(son2)
def MyWrite(root,name):
from xml.dom import minidom
rough_string = ET.tostring(root, 'utf-8')
reparsed = minidom.parseString(rough_string)
new_str = reparsed.toprettyxml(indent="\t") f = open(name, 'w', encoding='utf-8')
f.write(new_str)
f.close() MyWrite(root,"5.xml")
configparser用于处理特定格式的文件
特定格式
# 注释1
; 注释2 [section1] # 节点
k1 = v1 # 值
k2:v2 # 值 [section2] # 节点
k1 = v1 # 值
import configparser
con = configparser.ConfigParser()
con.read('in',encoding='utf-8')
result = con.sections()
print(result)
ret = con.options('section1')
print(ret)
模块urllib requests json xml configparser 学习笔记的更多相关文章
- Requests:Python HTTP Module学习笔记(一)(转)
Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...
- PHP操作XML文件学习笔记
原文:PHP操作XML文件学习笔记 XML文件属于标签语言,可以通过自定义标签存储数据,其主要作用也是作为存储数据. 对于XML的操作包括遍历,生成,修改,删除等其他类似的操作.PHP对于XML的操作 ...
- xml基础学习笔记01
注意:刚刚看了网上对于XML中的标签,节点和元素?到底应该怎么表述?起初我也有这个疑惑,现在我的想法是:下面出现node的应称作节点,节点对象.element应称作元素,毕竟这更符合英文的本意.至于标 ...
- xml基础学习笔记05
Xpath快速解析 如题一样,本篇主要说说Xpath快速查找XML文档 * Xpatn.Xquery,是专门用来查询xml的语言 * 查询xml非常快 Xpatn.Xquery,是专门用来 ...
- xml基础学习笔记04
今天继续xml学习,主要是:SimpleXML快速解析文档.xml与数组相互转换 .博客中只是简单的做一个学习记录.积累.更加详细的使用方法,可以查看php手册 1.SimpleXML快速解析文档 前 ...
- xml基础学习笔记03
继续上篇xml学习笔记,坚持.坚持.再坚持啊.... 本篇主要记录: 35.XML节点的删除与修改 36集.用XML制作RSS订阅源 <?php /* 笔记: 35.XML节点的删除与修改 使用 ...
- 8.2、常用模块介绍2:xml,configparser,hashlib
xml: 介绍:包含关于可扩展标记语言xml的函数 使用: python有三种方法解析XML--SAX,DOM,以及ElementTree,由于xml技术落后,所以这里不对sax,dom介绍: xml ...
- requests源码阅读学习笔记
0:此文并不想拆requests的功能,目的仅仅只是让自己以后写的代码更pythonic.可能会涉及到一部分requests的功能模块,但全看心情. 1.另一种类的初始化方式 class Reques ...
- Requests:Python HTTP Module学习笔记(二)(转)
在上一篇日志中对Requests做了一个整体的介绍,接来下再介绍一些高级的用法,主要资料还是翻译自官网的文档,如有错漏,欢迎指正. 参考资料:http://docs.python-requests.o ...
随机推荐
- python 《numpy》
import numpy as np 创建一个矩阵 array = np.array([[1, 2, 3], [3, 2, 1]]) print(array) # [[1 2 3] # [3 2 1] ...
- 面经手册 · 第18篇《AQS 共享锁,Semaphore、CountDownLatch,听说数据库连接池可以用到!》
作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有 ...
- 08 . Vue脚手架安装,使用,自定义配置和Element-UI导入使用
Vue脚手架 Vue脚手架可以快速生成Vue项目基础的架构. 安装3.x版本的Vue脚手架 /* npm install -g @vue/cli@3.3 */ 基于3.3版本的脚手架命令创建Vue项目 ...
- [LeetCode题解]24. 两两交换链表中的节点 | 递归
方法一:递归 解题思路 递归法,假设后续链表已经完成交换,此时只需要对前两个节点进行交换,然后再连接上后续已交换的链表即可. 代码 /** * Definition for singly-linked ...
- c#多播委托判断空值
int resualt = (int)fn?.Invoke(a, b); 其中fn是有两个参数一个int返回值的多播委托,这个看起来很精炼,大概意思也不懂 个人理解为使用先判断fn?,再传值以及输出为 ...
- 两年经验拿到蚂蚁金服,字节offer,附上金九银十BAT面试核心知识点整理
前言 我自己是本科毕业后在老东家干了两年多,老东家算是一家"小公司"(毕竟这年头没有 BAT 或 TMD 的 title 都不好意思报出身),毕业这两年多我也没有在大厂待过,因此找 ...
- 循序渐进VUE+Element 前端应用开发(29)--- 高级查询条件的界面设计
在系统模块中的业务列表展示里面,一般我们都会在列表中放置一些查询条件,如果是表字段不多,大多数情况下,放置的条件有十个八个就可以了,如果是字段很多,而这些条件信息也很关键的时候,就可能放置很多条件,但 ...
- 【linux】系统调用版串口分析&源码实战
目录 前言 参考 1. 实战分析 1.1 开发步骤 1.1.1 获取串口设备路径 1.1.2 打开设备文件 1.1.3 配置串口 termios 结构体 1. c_iflag 输入模式标志 2. c_ ...
- G - Pyramid 题解(打表)
题目链接 题目大意 t组数据,给你一个n(n<=1e9)求高度为n的等边三角形,求里面包含了多少个等边三角形 题目思路 打表找规律,然而我一直没找到规律. 看到题解恍然大悟,答案就是C(n+3, ...
- Springboot核心注解
运行文中的代码需要在项目构建中引入springboot 相关依赖. ① @configuration configuration,用来将bean加入到ioc容器.代替传统xml中的bean配置.代码示 ...