美文网首页
html解析-BeautilfulSoup

html解析-BeautilfulSoup

作者: 非鱼2018 | 来源:发表于2019-11-30 11:58 被阅读0次

BeautilfulSoup是比较常用的一个html解析库
安装:pip install beautilfulsoup4
4个常用解析库
1.html.prase
2.xml
3.lxml
4.htm5lib

from bs4 import BeautilfulSoup as BS
soup=BS('result.html','lxml')
soup=soup.prettifiy()
print(soup.title.string)

dmo操作
p.contents\p.children\p.silbing,p.parent\p.desantoranr\p.anstoer等等

print(soup.body.contents)
for i in soup.div.children:
    print(i)

获取属性,文本,

print soup.a.ge_text
print soup.a.attrs['href']

最最常用的css选择器:soup.select()

使用bs修改html文件

soup=BS('result.html','lxml')
soup=soup.prettifiy()
print(soup.title.string)
bs=soup.select('#id')
bs.attrs['style']="mic-width=100"
with open('result.html',,'w') as f:
    f.write(soup.prettifiy())
    f.close()

解析部分文档

only_a_tags= SoupStrainer("a")

print(bs(html_doc,"html.parser",parse_only=only_a_tags).prettify())

find all方法的使用

常用方法:find\findall

#打印第一个链接的text
print(soup.findAll('a')[1].text)
#查找属性为{'target':'_blank'}的所有元素
print(soup.findAll(attrs={'target':'_blank'}))

soup=bs(html_doc,'lxml')
links=soup.findAll('a')
for link in links:
    print(link['href'])
#查找多个标记
links_ps=soup.findAll(['a','p'])
print(links_ps)
#使用传入方法给findall
def has_class_but_no_id(tag):
    return tag.has_attr('class')and not tag.has_attr('id')

links_ps=soup.findAll(has_class_but_no_id)

相关文章

  • html解析-BeautilfulSoup

    BeautilfulSoup是比较常用的一个html解析库安装:pip install beautilfulsou...

  • 记一次jsoup的使用

    Jsoup是用于解析HTML,就类似XML解析器用于解析XML。 Jsoup它解析HTML成为真实世界的HTML。...

  • lxml的使用方法

    使用lxml解析HTML代码 1.解析html字符串:使用lxml.etree.HTML进行解析,示例代码如下: ...

  • 阻塞解析与阻塞渲染

    Block Parsing: 阻塞解析 script 标签会阻塞 html 页面的解析,阻塞解析:html 页面会...

  • 重绘和重排(回流)

    一、浏览器渲染HTML的步骤 HTML被HTML解析器解析成DOM Tree, CSS则被CSS解析器解析成CSS...

  • 虚拟DOM是啥?

    一、浏览器渲染HTML的步骤 HTML被HTML解析器解析成DOM Tree, CSS则被CSS解析器解析成CSS...

  • 浏览器渲染原理

    HTML 的解析过程 js 的下载和执行会阻塞 HTML 的解析,等 js 执行完继续去解析 HTML 问题1:为...

  • python bs4的坑

    lxm解析html会导致丢失结构 html5lib解析不会丢失结构

  • android利用jsoup抓取数据

    效果图 首先分析html: 添加依赖 将String的url解析成html 解析Html 实体类 JsoupAdp...

  • 浏览器渲染机制、重绘、重排

    网页生成的过程 HTML解析器会将html解析成DOM树 CSS解析器会将css解析成CSSOM树 结合DOM树和...

网友评论

      本文标题:html解析-BeautilfulSoup

      本文链接:https://www.haomeiwen.com/subject/cotuectx.html