快盘下载:好资源、好软件、快快下载吧!

快盘排行|快盘最新

当前位置:首页软件教程电脑软件教程 → Python Beautiful Soup简介

Python Beautiful Soup简介

时间:2022-05-09 13:50:37人气:作者:快盘下载我要评论
beautiful soup4

正在学习网页相关的Python模块,一起学习下这个“美丽的汤”

功能简介

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.

安装beautiful soup: $ easy_install beautifulsoup4 $ pip install beautifulsoup4 安装解析器: $ easy_install lxml $ pip install lxml 流程:

1.requests库获取网页->2.Beautifulsoup创建soup对象->使用bs4解析得到相应的内容。

示例
#coding:utf-8
from bs4  import BeautifulSoup

doc = ['<html><head><title>Page title</title></head>',
       '<body><p id="firstpara" align="center">This is paragraph <b>one</b>.',
       '<p id="secondpara" align="blah">This is paragraph <b>two</b>.',
       '</html>']
soup = BeautifulSoup(''.join(doc))  #''.join(doc) 将list doc 转换成字符串

print (soup.title)
print (soup.title.name)
print (soup.title.string)
print (soup.p)
print (soup.p['id'])
print (soup.find_all('p'))
print (soup.find_all(id = "secondpara" ))
print (soup.get_text())


执行结果:

C:PythonPython36python.exe D:/2.codes/PycharmProjects/PyReptilian/beautysoap.py
<title>Page title</title>
title
Page title
<p align="center" id="firstpara">This is paragraph <b>one</b>.</p>
firstpara
[<p align="center" id="firstpara">This is paragraph <b>one</b>.</p>, <p align="blah" id="secondpara">This is paragraph <b>two</b>.</p>]
[<p align="blah" id="secondpara">This is paragraph <b>two</b>.</p>]
Page titleThis is paragraph one.This is paragraph two.

Process finished with exit code 0


获取一个网页的相关信息示例,参考网页内容:

#coding:utf-8
from bs4 import BeautifulSoup
import requests

class Html():
    soup = None
    def __init__(self):
        url = 'http://news.baidu.com/' 
        html = requests.get(url).content # 获取首页的html
        self.soup = BeautifulSoup (html, 'lxml') # 得到soup对象

    def getTitle(self):
        #title = self.soup.title #返回的结果带title标签<title> </title>
        title = self.soup.title.string
        return title

    def getH1(self):
        try:
            h2 = self.soup.select("h2") # 获取h2,结果带h2标签
            if (len(h2) > 1):
               #print (''.join(["糟糕了 ", str(len(h2)),"个h2,不利seo"]))   #list转str
               print("共%d个h2"%len(h2))

        except AttributeError:
            return "h2不存在"

        return h2
demo = Html()
print ( "标题:%s
" % (demo.getTitle() ))
print ("h1:
%s"  %(demo.getH1()))


相关文章

  • sklearn简介sklearn库安装

    sklearn库安装_sklearn简介,Scikit learn 也简称sklearn,是机器学习领域当中最知名的python模块之一。...
  • Docker 和 WebAssembly 集成简介

    WebAssembly,通常简称为 Wasm,是一种相对较新的技术,它允许你编译用 40 多种语言(包括 Rust、C、C++、JavaScript 和 Golang)编写的应用程序代码,并在沙盒环境中运行它。...

网友评论

快盘下载暂未开通留言功能。

关于我们| 广告联络| 联系我们| 网站帮助| 免责声明| 软件发布

Copyright 2019-2029 【快快下载吧】 版权所有 快快下载吧 | 豫ICP备10006759号公安备案:41010502004165

声明: 快快下载吧上的所有软件和资料来源于互联网,仅供学习和研究使用,请测试后自行销毁,如有侵犯你版权的,请来信指出,本站将立即改正。