• 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)
    

      

  • 相关阅读:
    shell脚本空行造成“: not found.sh“报错
    MySQL实现分组排序(8.0版本以下ROW_NUMBER() OVER())
    vscode远程主机
    nginx-ingress-controler改写上下文
    nginx-ingress-controller自定义参数
    kubernetes安装nginx-ingress-controller服务
    二进制kubernetes升级
    C++关键字完整版
    virtio、vhost和 vhost-user
    Tomcat端口占用报错时的排除办法
  • 原文地址:https://www.cnblogs.com/ceshixuexi/p/7764176.html
Copyright © 2020-2023  润新知