让Python更便捷-简介Python常用的标准库与介绍


本文摘自php中文网,作者Tomorin,侵删。

Python中到底有哪些Python常用库会让程序员爱不释手?以至于一次上瘾,今天我们就来整理一番这样的Python常用库,欢迎各位在评论区或者私信我添加或者修改相关库内容。

首先介绍beautifulsoup这个库,因为最开始接触爬虫的时候,就看到大家强力推荐这个库。后来用了下,觉着确实不错。但是程序员嘛,哪能在一个库里闷死,哈哈。

几个库的安装过程就不再累述,参考anaconda。-_-.

后面几个实例,均用这个来测试。

1

2

3

4

5

6

7

8

9

10

11

html = """

<html><head><title>The Dormouse's story</title></head>

<body>

<p class="myclass" name="dromouse"><b>The Dormouse's story</b></p>

<p class="story">Once upon a time there were three little sisters; and their names were

<a href="http://example.com/elsie" class="myclass" id="box"><!-- Elsie --></a>,

<a href="http://example.com/lacie" class="myclass" id="box1">Lacie</a> and

<a href="http://example.com/tillie" class="myclass" id="box2">Tillie</a>;

and they lived at the bottom of a well.</p>

<p class="story">...</p>

"""

BeautifulSoup

Beautiful Soup支持Python标准库中的HTML解析器,还支持一些第三方的解析器。例如lxml HTML,lxml XML,html5lib。不过要安装这些库,否则它会使用python的内部标准库。

  beautifulsoup的对象创建有两种方式。

1.  soup=BeautifulSoup(html) #用变量内容来创建

2.  soup=BeautifulSoup('mysite.html') #用本地文件来创建

  BeautifulSoup是将HTML转化为一个复杂的树形结构,每个节点都是python对象,有前端基础的同学会知道,类似DOM对象。BeautifulSoup中的对象大致有四种,Tag、NavigableString、BeautifulSoup、Comment。由于我们平时操作大多数是针对一个个标签提取信息,所以我简略的叙述下常用到的Tag对象。

Tag

tag就是HTML的一个个标签。

例如HTML中的 head,title,a,p等等。

在实际操作中,我们会将所需要的标签通过选择器查找出来,然后通过操作Tag对象来获取所需信息。在BeautifulSoup中,常用的findAll()和find()来搜索文档树来获取自己所需的标签。同时,BeautifulSoup也支持CSS语法来搜索,select()方法,返回的类型是list。

ps:

1.findAll()等同于find_all()

2.对前端比较了解的,用select()方法比较顺手。

find()

find()相当于findAll()中limit=1的时候,不过find()返回的是结果,findAll()返回的是一个列表。

CSS选择器

  beautifulsoup支持CSS语法的选择器来查找所需要的标签。

1

2

3

4

5

6

7

8

9

10

select(CSS选择器)

例:

soup.select('.myclass #box')

#后代选择器

soup.select('head>title')

#子选择器

soup.select('div+p')

#相邻兄弟选择器

soup.select('div~p’)

#后续兄弟选择器

同时还可以加入属性查找。

1

soup.select('.myclass a[id="box"]')

select()方法返回的是列表形式。

以上差不多就是BeautifulSoup常用的功能

以上就是让Python更便捷-简介Python常用的标准库与介绍的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python中基本数据类型是什么

Python中关于str与repr的使用详解

Python中的split是什么

Python这68个内置函数,建议你吃透!

Python 的二元算术运算详解

Python把二维数组输出为图片的方法

Python如何打开一个txt文件

Python怎么生成字典

实例详解Python+slack api 如何实现聊天机器人

pandas实现选取特定索引的行

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...