python spider 爬虫 之 解析 xpath 、jsonpath、BeautifulSoup (三)

这篇具有很好参考价值的文章主要介绍了python spider 爬虫 之 解析 xpath 、jsonpath、BeautifulSoup (三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

BeautifulSoup

简称:bs4

BeautifulSoup跟lxml 一样,是一个html文档的解析器,主要功能也是解析和提取数据
优缺点
缺点:效率没有lxml的效率高
优点:接口接口人性化,使用方便 延用了css选择器

python spider 爬虫 之 解析 xpath 、jsonpath、BeautifulSoup (三)

安装BeautifulSoup

1、安装:pip install bs4
2、导入:from bs4 import BeautifulSoup
3、创建bs4 对象
① 服务器响应的文件生成对象
soup = BeautifulSoup(response.read().decode(‘utf-8’),‘lxml’)
② 本地文件生成对象 python对open默认打开文档是gbk
soup = BeautifulSoup(open(‘html文档.html’, ’r‘,encoding=‘utf-8’),‘lxml’)

from bs4 import BeautifulSoup

soup = BeautifulSoup(open('1.html','r',encoding='utf-8'))

# 节点定义
# 1、根据标签查找节点 
print(soup.img)   # 只能找到1.html中第一个img标签元素   <img >     </img>
print(soup.img.name)   # 返回 img   元素名称
print(soup.img.attrs)  # 返回 img的属性,以字典形式输出

# 2、函数式  find    find_all 	search
#   find     返回是是一个元素对象
print(soup.find('img'))					# 只能找到第一个img元素 对象  
print(soup.find('img'),alt='kitty')		# 获取 alt=kitty的img元素,也是符号条件的第一个对象
#  如果用class 匹配 要在      class_      下划线
print(soup.find('img'),class_='kitty')	# 获取 alt=kitty的img元素,也是符号条件的第一个对象  

#	find_all 	返回是列表
print(soup.find_all('img'))					# 返回所有img元素   
print(soup.find_all(['img', 'span'])		# 获取 返回所有img和span元素

print(soup.find_all('img'), limit=2)		# 返回前面2个 img元素

#	select   根据选择器得到节点列表对象      跟CSS3 选择器一样
print(soup.select('div'))		#   返回 标签是div的所有元素   
print(soup.select('#p'))		#   返回 id=P的标签元素   
print(soup.select('.p'))		#   返回 class=p的所有标签元素列表   
print(soup.select('div>p'))		#   返回 选择所有父级是div的元素的p元素  
print(soup.select('div,p'))		#   返回 所有div和p的元素列表
print(soup.select('div p'))		#   返回 选择div元素内所有p元素 	

#  属性选择器

print(soup.select('div[id]'))		#   返回 选择有属性id的所有div元素列表	
print(soup.select('div[id="A2"]'))		#   返回 选择属性id="A2"的所有div元素列表	


# 节点信息    
#	string      get_text()        xpath  用  text()

#			获取节点内容

obj = soup.select('#d1')[0]   #select()  返回是列表,   如果要得到第一个元素对象 [0]  才能用  obj.name
# 如果标签对象中 只有内容 string  和  get_text()  效果一样
# 如果标签对象中  出来内容还有标签,  string  就获取不到内容了,get_text() 是可以获取得的

print(obj.string)
print(obj.get_text())


#			获取节点属性
obj = soup.find('li')  	#find()  返回是元素对象  obj.name

print(obj.name)    # 获取元素名称
print(obj.attrs)   # 将属性值作为一个  字典 返回
print(obj.attrs.get('title'))   #    推荐这种
print(obj.get('title'))   		# 
print(obj['title'])   			# 

xpath 、jsonpath、BeautifulSoup

如果是json格式,用 jsonpath

如果是html网页, 首选xpath文章来源地址https://www.toymoban.com/news/detail-515245.html

到了这里,关于python spider 爬虫 之 解析 xpath 、jsonpath、BeautifulSoup (三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python爬虫——解析_jsonpath解析淘票票网站

    jsonpath简单解析淘票票网站,获取城市名称 代码如下:

    2024年02月14日
    浏览(29)
  • Python爬虫学习笔记(六)————BeautifulSoup(bs4)解析

    目录 1.bs4基本简介 (1)BeautifulSoup简称 (2)什么是BeatifulSoup? (3)优缺点 2.bs4安装以及创建 (1)安装          (2)导入          (3)创建对象 3.节点定位 (1)根据标签名查找节点 (2)函数         ①find(返回一个对象)         ②find_all(返回一个列表

    2024年02月17日
    浏览(49)
  • python爬虫数据解析xpath

    下载地址:百度网盘 请输入提取码 第一步: 下载好文件后会得到一个没有扩展名的文件,重命名该文件将其改为.rar或者.zip等压缩文件,解压之后会得到一个.crx文件和一个.pem文件。新建一个文件夹,将这两个文件放在该文件夹(本人将其命名为xpath-helper)内。 第二步: 将

    2024年02月10日
    浏览(37)
  • Python爬虫学习笔记(四)————XPath解析

    目录 0.xpath最新下载地址和安装教程 1.xpath安装 2.xpath基本使用 3.xpath基本语法 4.实例 (1)xpath解析本地文件  (2)xpath解析服务器响应的数据 ①获取百度网站的“百度一下”四个字 ②获取站长素材网站情侣图片前十页的图片 0.xpath最新下载地址和安装教程 https://blog.csdn.net/

    2024年02月16日
    浏览(44)
  • Python爬虫解析工具之xpath使用详解

    爬虫抓取到整个页面数据之后,我们需要从中提取出有价值的数据,无用的过滤掉。这个过程称为 数据解析 ,也叫 数据提取 。数据解析的方式有多种,按照 网站数据来源 是静态还是动态进行分类,如下: 动态网站: 字典取值 。动态网站的数据一般都是JS发过来的,基本

    2024年02月12日
    浏览(48)
  • Python爬虫——解析插件xpath的安装及使用

    目录 1.安装xpath 2.安装lxml的库 3.xpath基本语法 4.案例一:获取百度网站的百度一下字样 5.案例二:爬取站长素材网上的前十页照片 打开谷歌浏览器 -- 点击右上角小圆点 -- 更多工具 -- 扩展程序  下载xpath压缩包,下载地址:阿里云盘分享 把压缩包解压到指定目录 -- 选择加

    2024年02月02日
    浏览(37)
  • Python中jsonpath库使用,及与xpath语法区别

    jsonpath库使用 pip install jsonpath 基本语法 JSONPath语法元素和对应XPath元素的对比

    2024年02月12日
    浏览(40)
  • Python爬虫技术系列-02HTML解析-xpath与lxml

    参考连接: XPath教程 https://www.w3school.com.cn/xpath/index.asp lxml文档 https://lxml.de/index.html#support-the-project 爬虫专栏 https://blog.csdn.net/m0_38139250/category_12001010.html XPath的中文名称为XML路径语言(XML Path Language),其最初的设计是用来搜索 XML 文档,但也适用于HTML文档搜索。1996年11月,

    2024年02月07日
    浏览(38)
  • Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析

    1.1 查看原页面信息 首先打开豆瓣Top250电影页面,其网址是:https://movie.douban.com/top250。 可以发现,该页面展示的电影信息有中英文电影名、导演、主演、上映年份、国籍、电影类型、评分等。 下滑到页面底部,发现第一页有25部电影的数据,并且可以点击页码数实现页面跳转

    2024年02月05日
    浏览(44)
  • 5.网络爬虫——Xpath解析

    前言: 📝​📝​此专栏文章是专门针对Python零基础爬虫,欢迎免费订阅! 📝​📝第一篇文章获得 全站热搜第一 , python领域热搜第一 , 第四篇文章 全站热搜第八 ,欢迎阅读! 🎈🎈欢迎大家一起学习,一起成长!! 💕💕:悲索之人烈焰加身,堕落者不可饶恕。永恒燃

    2024年02月03日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包