加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python爬取所有城市的aqi值

发布时间:2020-12-20 12:46:22 所属栏目:Python 来源:网络整理
导读:? # -*- coding: utf-8 -*- # author:baoshan import requests from bs4 import BeautifulSoup def get_city_aqi(city_pinyin): url = ‘ http://pm25.in/ ‘ + city_pinyin r = requests.get(url,timeout=30 ) soup = BeautifulSoup(r.text, ‘ lxml ‘ )

?

# -*- coding: utf-8 -*-
# author:baoshan

import requests
from bs4 import BeautifulSoup

def get_city_aqi(city_pinyin):
    url = http://pm25.in/+city_pinyin
    r = requests.get(url,timeout=30)
    soup = BeautifulSoup(r.text,lxml)
    div_list = soup.find_all(div,{"class":"span1"})
    city_aqi = []
    for i in range(8):
        div_content = div_list[i]
        caption = div_content.find(div,{"class": "caption"}).text.strip()
        value = div_content.find(div,{"class":"value"}).text.strip()
        city_aqi.append((caption,value))
    return city_aqi


def get_all_cities():
    url = http://pm25.in/
    city_list = []
    r = requests.get(url,lxml)
    city_div = soup.find_all(div,{class:bottom})[1]
    city_link_list = city_div.find_all(a)
    for city_link in city_link_list:
        city_name = city_link.text
        city_pinyin = city_link[href][1:]
        city_list.append((city_name,city_pinyin))
    return city_list

def main():
    city_list = get_all_cities()
    for city in city_list:
        city_name = city[0]
        city_pinyin = city[1]
        city_aqi = get_city_aqi(city_pinyin)
        print(city_name,city_aqi)

if __name__ == __main__:
    main()

?

参考自:小象学院的AQI空气质量指数计算

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读