zoukankan      html  css  js  c++  java
  • python bs4的使用

    # -*- coding:utf-8 -*-
    from bs4 import BeautifulSoup as bs
    import re
    
    html_doc = """
    <html><head><title>The Dormouse's story<a>试试</a></title></head>
    <body>
    <p class="title"><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" class="sister" id="link1">Elsie</a>,
    <a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
    <a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
    and they lived at the bottom of a well.</p>
    
    <p class="story">...</p>
    """
    
    soup=bs(html_doc,'html.parser')
    
    # 获取网页内容
    # print(soup.prettify())
    
    
    # #获取网页的title
    # print(soup.title)
    #
    # #H获取网页title的内容,获取id为link2的内容,若标签中还有标签,则返回值为None,这时就可以用.get_text()来获取结果
    # print(soup.title.string)
    # print(soup.title.get_text())
    
    #获取第一个a标签
    # print(soup.a)
    #
    #
    # print(soup.find(id='link2').string)
    
    #
    # #获取所有的a标签,并返回列表
    # print(soup.findAll('a'))
    #
    #
    # #获取class为story的p标签,且不能像find(id='**')来获取,因为class为python的关键字
    # print(soup.find('p',{'class':'story'}).get_text())
    
    #
    # for tag in soup.find_all(re.compile("^b")):
    #     print(tag.name)
    
    
    
    
    
    
    data=soup.findAll('a',href=re.compile(r'^http://example.com'))
    
    print(data)
    

      

  • 相关阅读:
    Dart语言学习笔记(5)
    使用 Dart 调用 REST API
    JSON数据的解析和生成(Dart)
    趣味编程:静夜思(Dart版)
    正则表达式(Dart)
    Dart语言学习笔记(4)
    Dart语言学习笔记(3)
    C++11特性之右值引用
    各大编程字体比较
    优先队列的应用 C++实现
  • 原文地址:https://www.cnblogs.com/ceshixuexi/p/7764176.html
Copyright © 2011-2022 走看看