吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4730|回复: 3
收起左侧

[Python 转载] Python通过读取网站信息以及BeautifulSoup解析获取到pm2.5数据

[复制链接]
qwedc001 发表于 2016-12-30 15:11
大家好,我是一个新人,文笔不好请多多指教。前几个月入手了一个树莓派,又买了一套拓展板,就是为了能学习一下Python编程。最近青岛雾霾比较猖狂,每天上网上查雾霾信息实在是太麻烦了。所以我干脆打算用Python抓取网站信息再显示到我的拓展板上(我只会展示获取PM2.5的代码的)。结果还真成功了。这个程序需要你安装BeautifulSoup来解析网站。简单的看了一下,aqi,pm2.5啥啥都可以获取到。简直是神器!
放一下获取Aqi的代码哈
[Python] 纯文本查看 复制代码
import urllib2
import time
from bs4 import BeautifulSoup
import re
def getPM25(cityname):
    site = 'http://www.pm25.com/city/' + cityname+'.html' 
    try:
        html = urllib2.urlopen(site)
        soup = BeautifulSoup(html,"html5lib")
        city = soup.find("span",{"class":"city_name"})
        aqi = soup.find("a",{"class":"cbol_aqi_num"})
        pm25 = soup.find("span",{"class":"cbol_nongdu_num_1"})
        pm25danwei = soup.find("span",{"class":"cbol_nongdu_num_2"})
        quality = soup.find("span",{"class":re.compile('cbor_gauge_level\d$')})
        result = soup.find("div",{"class":'cbor_tips'})
        replacechar = re.compile("<.*?>") 
        space = re.compile(" ")
        print city.string + " aqi = "+aqi.string
        return int(aqi.string)
    except Exception,e:
        print "catched exception"
        print e
        return -1
if __name__ == '__main__':  
    while True:
        aqi = getPM25('qingdao')#我是青岛人,所以是qingdao,假设你是北京人,你就输入beijing
        if aqi == -1:
            time.sleep(1)
            continue
        


免费评分

参与人数 1热心值 +1 收起 理由
faithg + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
七彩棒棒堂 发表于 2016-12-30 15:23
提示: 作者被禁止或删除 内容自动屏蔽
luoky7 发表于 2016-12-30 18:57
BeautifulSoup的确很强大,可结合selenium解析动态网页
CrazyNut 发表于 2018-4-30 21:34
楼主还是努力学学这种基础吧= = 反汇编就放一边吧= =
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 15:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表