序言
文中的文本及图片来自互联网,仅作学习培训、沟通交流应用,不具备一切商业行为,如有什么问题请立即在线留言以作解决 。
PS:若有必须Python学习材料的小伙伴们能够加点一下正下方连接自主获得
python免费学习材料及其群沟通交流解释点一下就可以添加
基础自然环境配备
- python 3.6
- pycharm
- requests
- parsel
- csv
有关控制模块pip安装就可以
明确总体目标网页
剖析网页
开启微信开发工具基本实际操作~
看一下网页回到的数据信息,是不是有自身有要的~
如下图所示 ,这一网址是静态数据网页,数据信息都会网页中的
tr 标识里边
编码一部分
- 要求网页数据信息
import requests url = 'https://weather.mipang.com/changsha/9yuefen.html' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' } response = requests.get(url=url, headers=headers)
- 分析网页获取要想的数据信息
selector = parsel.Selector(response.text) trs = selector.css('.tb tr') for tr in trs: dit = {} date = tr.css('td:nth-child(1)::text').get() dit['时间'] = date max_temperature = tr.css('td:nth-child(2)::text').get() dit['最高温度'] = max_temperature min_temperature = tr.css('td:nth-child(3)::text').get() dit['最低温'] = min_temperature weather = tr.css('td:nth-child(4)::text').get() dit['气温'] = weather wind = tr.css('td:nth-child(5)::text').get() dit['风频'] = wind wind_power = tr.css('td:nth-child(6)::text').get() dit['风速'] = wind_power print(dit)
- 储存数据信息
f = open('气温.csv', mode='a', encoding='utf-8-sig', newline='') csv_writer = csv.DictWriter(f, fieldnames=['时间', '最高温度', '最低温', '气温', '风频', '风速']) csv_writer.writeheader() csv_writer.writerow(dit) f.close()