将网页的解析数据存储为html文件
2017-02-05 23:11
597 查看
为了把从网页中解析的数据存储起来,便于存档和查询,可以把数据存放在数据库中,也可以以文件的方式存储,还可以存储为网络应用程序,即html文件或者CSV格式文件。本文引用一个例子,看看如何将网页的解析数据存储为html文件。
用浏览器打开执行的结果:
from bs4 import BeautifulSoup import requests #前置标签 pre_html = ''' <!DOCTYPE HTML> <html> <head> <!--meta charset = 'utf-8'--> <title>油价历史数据</title> </head> <body> <h2>自去年11月份以来的油价数据(取自本例网站)</h2> <table width=600 border=1> <tr><td>日期</td><td>92#无铅</td><td>95#无铅</td><td>98#无铅</td></tr> ''' #后置标签 post_html = """ </table> </body> </html> """ url = 'http://new.cpc.com.tw/division/mb/oil-more4.aspx' src = requests.get(url) #src.encoding = "bgk" html = src.text bs = BeautifulSoup(html, 'html.parser') data = bs.find_all('span' ,{'id':'Showtd'} ) rows = data[0].find_all('tr') prices = list() i = 0 for row in rows: if i > 18:break; cols = row.find_all("td") if len(cols[1].text ) > 0: item = [cols[0].text, cols[1].text, cols[2].text, cols[3].text] prices.append(item) i += 1 #生成数据表 html_body = '' for p in prices: html_body += "<tr><td>{}</td><td>{}</td><td>{}</td><td>{}</td></tr>".format(p[0],p[1],p[2],p[3]) html_file = pre_html + html_body + post_html #按文本文件的方式生成html文件 fp = open('oilprice.html','w') fp.write(html_file) fp.close()
用浏览器打开执行的结果:
相关文章推荐
- 大数据:lxml解析html文件(网页)
- 全自动静态网页生成器之 缘起及html文件解析(红马天下)
- 动手改造Ibatis,使其支持文件系统存储数据列 之 源码下载编译和SqlMapConfig解析
- python 解析网页数据的几种方法简介
- java解析json数据及java对象存储
- java利用url解析网页内容并模拟手动form提交数据
- 全自动静态网页生成器之 缘起及html文件解析
- Android数据存储——2.文件存储_E_Pull解析XML文档
- 用jsp将xml文件解析到网页显示,并把数据提交保存到数据库
- 抓取网页的本地数据存储
- Android数据存储——2.文件存储_C_DOM解析XML文档
- 传智播客--3G开发之单元测试,日志输出,文件数据存储,XML文件的解析
- IIS 无法显示网页,IIS不解析ASP,可执行HTML文件
- CTO解析移动云计算——数据存储和网络切换是最大考验
- java网页数据采集(中篇-数据存储)
- 基于树型结构数据的关系数据库存储与网页显示的研究 推荐
- 传智播客—Android(三)数据存储之XML解析技术
- Java网页数据采集器[中篇-数据存储]
- java 解析数据的存储过程的
- Android数据存储——2.文件存储_E_Pull解析XML文档