序言
文中的文本及图片来自互联网,仅作学习培训、沟通交流应用,不具备一切商业行为,如有什么问题请立即在线留言以作解决。
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()