赵乾舟 发表于 2021-8-12 15:48:20

天气预报查询

import requests
from lxml import etree
from pypinyin import lazy_pinyin
a = input('请输入要查询的城市:')
chengshi = lazy_pinyin(a,style=0)
chengshi = ''.join(chengshi)
url = f'https://www.tianqi.com/{chengshi}/'
ua = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36'}
respon = requests.get(url=url,headers =ua).text
jiexi = etree.HTML(respon)
city = jiexi.xpath('//dd[@class="name"]/h1/text()')
tianqi = jiexi.xpath('//dd[@class="weather"]//span/b/text()')
quantianwendu = jiexi.xpath('//dd[@class="weather"]//span/text()')
kongqizhiliang = jiexi.xpath('//dd[@class="kongqi"]/h5/text()')
pm = jiexi.xpath('//dd[@class="kongqi"]/h6/text()')
pm = pm.split(':')[-1]
pm = pm.strip()
richuriluo = jiexi.xpath('//dd[@class="kongqi"]/span/text()')
richuriluo = ','.join(richuriluo)
shidu = jiexi.xpath('//dd[@class="shidu"]/b/text()')
shidu = ','.join(shidu)
riqi = jiexi.xpath('//dd[@class="week"]/text()')
print('城市:',city,'日期:',riqi)
print(f'天气:{tianqi}')
print(f'温度:{quantianwendu}')
print(f'PM:{pm}')
print(f'日出日落:{richuriluo}')
print(f'{shidu}')



赵乾舟 发表于 2021-8-12 16:55:36

3天预报查询,代码自己写的,有点粗糙
import requests
from lxml import etree
from pypinyin import lazy_pinyin
a = input('请输入要查询的城市:')
chengshi = lazy_pinyin(a,style=0)
chengshi = ''.join(chengshi)
url = f'https://www.tianqi.com/{chengshi}/3'
ua = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36'}
respon = requests.get(url=url,headers =ua).text
jiexi = etree.HTML(respon)
shijian = jiexi.xpath('//div[@class="weaul_q weaul_qblue"]/span/text()')
shijian = ''.join(shijian)
shijian = shijian.split('天')
riqi = []
for i in shijian:
    j = i + '天'
    riqi.append(j)
tianqi = jiexi.xpath('//ul[@class="weaul"]//div[@class="weaul_z"]/text()')
tianqi = tianqi[: : 3]
wendu = jiexi.xpath('//div[@class="weaul_z"]//text()')
a = ''.join(wendu)
b = a.split('℃')
for i in range(len(tianqi)):
    print(f'{riqi},{b}℃')


页: [1]
查看完整版本: 天气预报查询