优草派  >   Python

Python数据处理有哪些库?三个库的优劣对比

罗西汉            来源:优草派

在使用python的爬虫脚本将一个网页的数据抓取回来的时候,数据都是非常复杂冗余的。想要获取指定的数据那就必须对数据进行清洗处理操作,本文就会介绍三个数据处理库的使用方法和他们之间的差异。

Python数据处理有哪些库?三个库的优劣对比

一、BeautifulSoup库

这个库是专门用于对HTML格式的返回数据进行解析处理的处理,提供了对HTML的树状格式进行解析的方法和获取指定标签内的数据的方法,使用方法如下所示:

# 导入BeautifulSoup库的bs4方法
from bs4 import BeautifulSoup
# 实例化一个处理html格式数据的soup对象
soup = BeautifulSoup(html,"html.parser")
# 获取段落标签p中的文本内容
info = soup.find(attrs={'p'}).text
# 获取标题并输出
data = soup.find(attrs={'id':title}).textprint(data)

二、lxml库

lxml库的作用是对xml格式的数据进行解析,除此之外他还可以对具有节点结构的任意数据进行处理,也可以对html格式数据处理,示例如下:

from lxml import etree
# 实例化解析对象
selector = etree.HTML(url)
# 使用xpath获取数据
print(country.text)survey_select = selector.xpath('//*[@id="wzneirong"]/p')

三、正则表达式

正则表达式可以用于任意格式数据的数据处理,它提供了几乎包含了所有数据进行匹配的方法。方法之间还可以自行组合使用,扩展性非常好,使用方法如下:

import re
# 使用filadll方法匹配数据,join方法拼接数据
data = re.findall('(.*?)', page_content)
info = ''.join(data)print(country[0],info)

总的来说,正则表达式和lxml库的效率快但是使用比较复杂,BeautifulSoup库的使用方法简单,但是运行的速度不快。

以上就是python数据处理三个库的使用方法介绍和效率难度对比了。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行