当前位置:首页 > python > 正文

python爬虫beautifulsoup解析html方法


python爬虫beautifulsoup解析html方法

这篇文章主要介绍了python爬虫beautifulsoup解析html方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

BeautifulSoup 解析html和xml字符串

python爬虫beautifulsoup解析html方法

实例:

  #!/usr/bin/python  # -*- coding: UTF-8 -*-  from bs4 import BeautifulSoup  import re    #待分析字符串  html_doc = """  <html>  <head>    <title>The Dormouse's story</title>  </head>  <body>  <p class="title aq">    <b>      The Dormouse's story    </b>  </p>    <p class="story">Once upon a time there were three little sisters; and their names were    <a href="http://example.com/elsie" rel="external nofollow" class="sister" id="link1">Elsie</a>,    <a href="http://example.com/lacie" rel="external nofollow" class="sister" id="link2">Lacie</a>     and    <a href="http://example.com/tillie" rel="external nofollow" class="sister" id="link3">Tillie</a>;    and they lived at the bottom of a well.  </p>    <p class="story">...</p>  """      # html字符串创建BeautifulSoup对象  soup = BeautifulSoup(html_doc, 'html.parser', from_encoding='utf-8')    #输出第一个 title 标签  print soup.title    #输出第一个 title 标签的标签名称  print soup.title.name    #输出第一个 title 标签的包含内容  print soup.title.string    #输出第一个 title 标签的父标签的标签名称  print soup.title.parent.name    #输出第一个 p 标签  print soup.p    #输出第一个 p 标签的 class 属性内容  print soup.p['class']    #输出第一个 a 标签的 href 属性内容  print soup.a['href']  '''  soup的属性可以被添加,删除或修改. 再说一次, soup的属性操作方法与字典一样  '''  #修改第一个 a 标签的href属性为 http://www.baidu.com/  soup.a['href'] = 'http://www.baidu.com/'    #给第一个 a 标签添加 name 属性  soup.a['name'] = u'百度'    #删除第一个 a 标签的 class 属性为  del soup.a['class']    ##输出第一个 p 标签的所有子节点  print soup.p.contents    #输出第一个 a 标签  print soup.a    #输出所有的 a 标签,以列表形式显示  print soup.find_all('a')    #输出第一个 id 属性等于 link3 的 a 标签  print soup.find(id="link3")    #获取所有文字内容  print(soup.get_text())    #输出第一个 a 标签的所有属性信息  print soup.a.attrs      for link in soup.find_all('a'):    #获取 link 的 href 属性内容    print(link.get('href'))    #对soup.p的子节点进行循环输出    for child in soup.p.children:    print(child)    #正则匹配,名字中带有b的标签  for tag in soup.find_all(re.compile("b")):    print(tag.name)

爬虫设计思路:

python爬虫beautifulsoup解析html方法

详细手册:

https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/

到此这篇关于python爬虫beautifulsoup解析html方法 的文章就介绍到这了,更多相关beautifulsoup解析html内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

标签:
上一篇: 下一篇:

暂无评论

发表评论

不理你。 不要啊! 吃饭。 吃惊。 吃西瓜。 飞吻! 恭喜! Hi 纠结! 膜拜! OK 抛媚眼。 泡泡糖。 抛钱。 忍! 生闷气! 调皮。 偷看。 委屈。 献花。 疑问? 抓狂!

小提示:Ctrl+Enter快速提交助您一臂之力~
2021-03-31 07:50:42
加载中……