zoukankan      html  css  js  c++  java
  • Beautiful Soup 4.2.0

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式
    
    快速开始
    
    pip install beautifulsoup4
    
    下面的一段HTML代码将作为例子
    
    
    content="""
    <div id="post_detail">
    	<div class="post">
    		<h2>
    			<a id="cb_post_title_url" href="http://www.cnblogs.com/Mainz/archive/2009/03/14/1411359.html">实用正则表达式匹配和替换</a>
    		</h2>
    		<div class="postText"><div id="cnblogs_post_body" class="blogpost-body"><p>正则表达式非常有用,查找、匹配、处理字符串、替换和转换字符串,输入输出等。而且各种语言都支持,例如.NET正则库,JDK正则包, Perl, JavaScript等各种脚本语言都支持正则表达式。下面整理一些常用的正则表达式。</p>
    <table style=" 710px;" border="1" cellspacing="0" cellpadding="2">
    
    """
    from bs4 import BeautifulSoup
    soup=BeautifulSoup(content,'html.parser')
    从文档中找到所有<p>标签的链接
    tag=soup.find(name="p")
    print(tag)
    从文档中找到所有<a>标签的链接:
    for link in soup.find_all('a'):
        print(link.get('href'))
    从文档中获取所有文字内容:
    print(soup.get_text())    
    
    每个tag都有自己的名字,通过 .name 来获取:
    tag.name = "div"
    tag.name
    一个tag可能有很多个属性. tag <b class="boldest"> 有一个 “class” 的属性,值为 “boldest” . tag的属性的操作方法与字典相同:
    tag['class']
    也可以直接”点”取属性, 比如: .attrs
    tag.attrs
    tag的属性可以被添加,删除或修改. 再说一次, tag的属性操作方法与字典一样
    tag['class'] = 'post'
    tag['id'] = 1
    tag
    # <div class="post" id="1">Extremely bold</div>
    
    del tag['class']
    del tag['id']
    tag
    # <div>Extremely bold</div>
    tag['class']
    # KeyError: 'class'
    print(tag.get('class'))
    多值属性
    

      

  • 相关阅读:
    python使用Fabric模块实现自动化运维
    sublime 字体设置
    java语言输出Fibonacci数列:1 1 2 3 5 8 13....直到55
    Java-取出字符串中第一个出现且唯一的字母
    java中charAt()方法的使用
    Java indexOf() 方法
    idea查找 enter class name的快捷键
    spring boot配置文件加载位置
    @PropertySource&@ImportResource&@Bean
    @Value获取值和@ConfigurationProperties获取值比较
  • 原文地址:https://www.cnblogs.com/morgana/p/8485342.html
Copyright © 2011-2022 走看看