Python爬虫之数据解析

Python爬虫之数据解析,第1张

bs4进行数据解析
原理:
1.实例化一个BeautifulSoup对象,并且将页面源码数据加载到该对象中
2.通过调用BeautifulSoup对象中相关的属性或者方法进行标签定位和数据提取一

环境安装:
-pip install bs4
-pip install lxml

如何实例化BeautifulSoup对象:
from bs4 import BeautifulSoup
对象的实例化:
1.将本地的html文档中的数据加载到该对象中
2.将互联网上获取的页面源码加载到该对象中

一、bs4实例化本地html文件

from bs4 import BeautifulSoup
if __name__ == "__main__":
    fp = open('./CSDN.html','r',encoding='UTF-8')
    soup = BeautifulSoup(fp,'lxml')#实例化对象
    print(soup.div) #soup.tagName返回的是文档中第一次出现的tagName标签
    print(soup.find('div')) #soup.find(tagName)等同于soup.tagName
    print(soup.find('div',id='app'))#属性定位soup.find(tagName,class_/id/attr='要查找的值')
    print(soup.find_all('a'))#找到所有的tagName标签,返回列表,也可以进行属性定位

    print(soup.select('.def'))#select('某种选择器(id/class/标签...选择器)'),返回列表
    #print(soup.select('选择器'>'层级1'>'层级2')) 其中">"表示一个层级,返回列表,如果有多个层级就把">"改成空格
    print(soup.select('.def')[0].text)#用.text或.string或.get_text()提取文本
    #text/get_text()可以获取某一标签中所有的文本内容,而string只可以获取改标签下直系的文本内容
    print(soup.select('.def')[0]['class'])#获取某一标签的某一属性值

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/869317.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-13
下一篇2022-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存