模块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 ...
随机推荐
- Ceph根据Crush位置读取数据
前言 在ceph研发群里面看到一个cepher在问关于怎么读取ceph的副本的问题,这个功能应该在2012年的时候,我们公司的研发就修改了代码去实现这个功能,只是当时的硬件条件所限,以及本身的稳定性问 ...
- 老板让只懂Java基本语法的我,基于AQS实现一个锁
10 点整,我到了公司,又成为全组最后一个到的员工. 正准备刷刷手机摸摸鱼,看见老板神秘兮兮地走了过来. 老板:闪客呀,你写个工具,基于 AQS 实现一个锁,给咱们组其他开发用 我:哦好的 老板:你多 ...
- 协程实现socket并发编程
在python中多线程其实是被弱化了,因为由于GIL的原因,同一时间只有一个线程能访问CPU,即使你的CPU是多核的在python中因为多线程被弱化了,所以协程显的重要,能够在一个线程中提高CPU的利 ...
- 基于udp的scoket通信
1.udp例子1 udpserver.py # udp的server,不需要进行监听也不需要建立连接 # 在启动服务之后只能被动的等待客户端发送消息过来 # 客户端发送消息的同时还会自带地址信息 # ...
- 《Spring Boot 实战纪实》之需求管理
目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...
- SpringIOC的高级特性
目录 1. lazy-Init延迟加载 1.1 XML方式开启延迟加载: 1.2 注解开启延迟加载: 1.3全局配置--default-lazy-init="": 应用场景: 2. ...
- 装了IDM后看网页有时会自动弹出下载怎么办
我们在安装了IDM之后,浏览一些网站时可能会自动弹文件下载窗口,但有时内容并非我们要下载的.对此类自动弹下载对话框的情况,操作者可进行自定义设置.不仅可通过设置文件格式来禁止自动弹窗,也可通过设置特定 ...
- 如何在IDM中设置代理服务器?
很多时候,大家下载文件都是在国外的一些网站上进行下载,这样不可免会受到自身国内网络的限制,另一方面下载源为避免服务器带宽占用过多而限制下载速率,这就会导致文件下载极慢,甚至几KB每秒. 这种情况是不是 ...
- Pytest学习(十一)- 失败重跑插件pytest-rerunfailures的使用
环境依赖 Python 3.5, 最高 3.8, or PyPy3 pytest 5.0或更高版本 插件安装 pip3 install pytest-rerunfailures -i http://p ...
- 12_Sensor简单实例
列出Android手机所支持的Sensor. package com.example.sensorlist; import java.util.List; import android.app.Act ...