python爬虫之利用bs4数据解析

  • 更新时间:2021-07-04 09:58:14
  • 编辑:束晨星
给大家整理了相关的编程文章,网友敖白梦根据主题投稿了本篇教程内容,涉及到标签、数据、获取、属性、一个相关内容,已被471网友关注,内容中涉及的知识点可以在下方直接下载获取。

参考资料

正文内容

我们整理一篇关于《python爬虫之利用bs4数据解析》技术文章,技术点分析的很透彻,把代码做了调试发布出来,为了大家阅读方便。

python爬虫之利用bs4数据解析

一、数据解析原理
  • 标签定位
  • 提取标签、标签属性中存储的数据值

二、bs4数据解析原理

  • 实例化一个BeautifulSoup对象,并且将页面原码数据加载到该对象中

  • 通过调用BeautifulSoup对象中相关的属性或方法进行标签定位和数据提取

三、安装

关于BeautifulSoup4的安装的详细教程推荐阅读:BeautifulSoup4的安装

pip install bs4

pip install lxml

四、实例化BeautifulSoup对象

  • from bs4 import BeautifulSoup

  • 对象的实例化

1.将本地的html文档中的数据加载到该对象中

fp = open('./test.html','r',encoding='utf-8')soup = BeautifulSoup(fp,'lxml')

2.将互联网上获取的页面源码加载到该对象中

page_text = response.text
soup = BeautifulSoup(page_text,'lxml')

3.提供的用于数据解析的方法和属性

- soup. tagName :返回的是文档中第一次 出现的tagName对应的标签

- soup. find() :
	- find( ' tagName ' ) :等同于soup. div
	- 属性定位:
		- soup. find( 'div' ,class_ , id/attr= ' song' ) 
	- soup. find_ all( 'tagName i ) :返回符合要求的所有标签(列表)
	
- select: 
	- select( '某种选择器(id, class, 标签...选择器) ' ),返回的是一个列表 。
	- 层级选择器: 
		- soup. select('.tang > ul > li > a'): >表示的是一个层级
		- oup. select(' .tang > ul a'): 空格表示的多个层级
		
- 获取标签之间的文本数据:
	- soup.a. text/string/get_ text( )
	- text/get_ text() :可以获取某一个标签中所有的文本内容
	- string:只可以获取该标签下面直系的文本内容
	
- 获取标签中属性值:
	- soup.a['href']

python爬虫相关知识点推荐学习:python爬虫

更多python学习可以访问python学习网进行学习。

相关教程

用户留言