Python爬虫之bs4与xpath简单理解

bs4:

bs4对应英文为Beautiful Soup,美丽的汤,不知道为啥取这名。

bs4在使用前需要下载,在终端中使用pip install bs4即可

pip install bs4

bs4用来 从网页里面提取数据,可以导航网页中的数据以及进行搜索与修改分析等。相比xpath简洁明了不少。

bs4自动将输入文档转换为unicode编码,输出文档转换为utf-8编码。

直接上栗子:

#导入所需的库
import requests
import bs4
#选择要抓取的网页
url = 'https://movie.douban.com/top250'
resp = requests.get(url,headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.52'})
#创建一个BeautifulSoup对象
soup = bs4.BeautifulSoup(resp.text,'html.parser')#这里不创建文档来显示最终数据,直接将数据在python中输出
#div是数据所在标签,class是数据属性,这里使用class_是为了区分python中的class
targets = soup.find_all('div',class_='hd')#使用find_all查找所有目标内容
for each in targets:
    print(each.a.span.text)

使用一个爬取豆瓣电影排行榜的例子来掌握bs4的简单使用

bs4.BeautifulSoup(resp.text,'html.parser')这里有两个参数,一个是resp.text,也就是我们所需的数据文本内容,第二个参数是html.parser

html.parser是bs4自带的解析器,直接用就好

运行效果:

肖申克的救赎
霸王别姬
阿甘正传
泰坦尼克号
这个杀手不太冷
美丽人生
千与千寻
辛德勒的名单
盗梦空间
星际穿越
楚门的世界
忠犬八公的故事
海上钢琴师
三傻大闹宝莱坞
机器人总动员
放牛班的春天
无间道
疯狂动物城
大话西游之大圣娶亲
控方证人
熔炉
教父
当幸福来敲门
触不可及
怦然心动

关于bs4还有许多内容,只能以后再学了(狗头)

xpath:

xpath用来在HTML中查找信息,关于HTML还有一些简单介绍:

在HTML中有许多节点,每个节点下又有许多子节点,上一个节点称下一个的父节点,同一等级之间叫同胞节点

xpath同样需要在python中下载第三方库,与bs4一样在终端中使用如下命令

pip install lxml

xpath用法:

首先构造出etree对象

form lxml import etree

例如我们要提取book节点下的nick里面的内容只需:
 

tree = etree.XML(xml)
res = tree.xpath('/book/nick/text()')

HTML语言相当于xml文档的子集

在使用python进行网页数据提取时使用xpath非常好用。

在网页中如何使用xpath:

首先在网页中右键,打开检查,然后使用ctrl+f打开xpath进行查找

 

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值