利用python的爬虫技术实现网页融合----如何优雅的把两个不同的本地网页内容合并到一个网页中

如何优雅的把两个不同的本地网页内容合并到一个网页中

问题:

项目中遇到一个问题就是把已经画出的两个html图合并成一个网页显示(给领导看)想了好多,开始想的是把原有的网页以字符串的方法是读取,然后把提取需要的部分(就是把第一个网页的<head>标签中的内容替换到第二个网页中,然后再把第一个网页的<body>中的内容增加到第二个网页中),随后而来的问题就是怎么读取<head>标签和<body>标签中的内容,思考无果放弃了。有知道的小伙伴可以留言。

第二个思路使用爬虫技术也就是本次使用的方法。

from bs4 import BeautifulSoup

要使用bs4这个库,这个库很好安装,当然还要安装一个依赖库。

直接上代码了,注释写的很清楚

from collections import defaultdict
from bs4 import BeautifulSoup

def MergeHTML(path):
    AllPlotfile = open(path + '\\data\\AllPlot.html', 'rb')
    htmlA = AllPlotfile.read()
    bsA = BeautifulSoup(htmlA,"html.parser")
    PlotStatusfile = open(path + '\\data\\PlotStatus.html', 'rb')
    htmlP = PlotStatusfile.read()
    bsP = BeautifulSoup(htmlP,"html.parser")    
    bsAhead = bsA.head
    bsAbody = bsA.body
    bsP.head.decompose()  #清除head标签
    bsP.html.insert_before(bsAhead) #插入bsAhead标签
    bsP.html.insert_before(bsAbody) #插入bsAbody标签
    with open(self.plotPath + '\\all.html','w', encoding="utf-8") as f:
        f.write(bsP.prettify()) #把合成的内容写入html中

if __name__ == "__main__":
    MergeHTML('.\\path')

建议读官网,有中文例子:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/#id49

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波雅_汉库克

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值