赞
踩
openyxl模块:用于处理excel文件的木块,可以Excel中的数据进行写入和读取
函数或类的名称 | 功能描述 |
load_workbook(filename) | 打开已经存在的工作簿,结果为工作簿对象 |
workbook.sheetnames | 工作簿对象的sheetnames属性,用户获取所有工作表的名称,结果为列表类型。 |
sheet.appenst) | 向工作表中添加一行数据,新数据接在工作表已有内容后面。 |
workbook.save(excelname) | 保存工作簿 |
weather.py
- # coding:utf-8
- import requests
- import re
- #发起请求
- def get_html():
- url="http://www.weather.com.cn/weather1d/101010100.shtml"
-
- #反爬
- headers={
- 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36'
- }
- resp=requests.get(url, headers=headers)#resp相应结果对象
- #设置响应的编码格式
- resp.encoding='utf-8'
- #print(resp.text)
- return resp.text
- #获取结果
- def parse_html(html_str):
- city=re.findall('<span class="name">([\u4e00-\u9fa5]*)</span>',html_str)
- weather=re.findall('<span class="weather">([\u4e00-\u9fa5]*)</span>',html_str)
- wd=re.findall('<span class="wd">(.*)</span>',html_str)
- zs=re.findall('<span class="zs">([\u4e00-\u9fa5]*)</span>',html_str)
- lst = []
- for a, b, c, d in zip(city, weather, wd, zs):
- lst.append([a, b, c, d])
- return lst
'运行
获取天气预报网站.py
- # coding:utf-8
- import weather
- import openpyxl
- lst=weather.parse_html(weather.get_html())
- #创建工作簿
- workbook=openpyxl.Workbook()
- #创建工作表对象
- sheet=workbook.create_sheet('景区天气')
- #将数据添加到工作表
- for item in lst:
- sheet.append(item)#一次添加一行
- workbook.save('景区天气.xlsx')
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。