博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
获取城市PM2.5的python代码
阅读量:6157 次
发布时间:2019-06-21

本文共 1272 字,大约阅读时间需要 4 分钟。

hot3.png

import urllib.requestimport threadingfrom time import ctimefrom bs4 import BeautifulSoup def getPM25(cityname):    site = 'http://www.pm25.com/' + cityname + '.html'    page = urllib.request.urlopen(site)    html = page.read();    soup = BeautifulSoup(html.decode("utf-8"))     city = soup.find(class_ = 'bi_loaction_city')   # 城市名称    aqi = soup.find("a",{"class","bi_aqiarea_num"})  # AQI指数    quality = soup.select(".bi_aqiarea_right span")  # 空气质量等级    result = soup.find("div",class_ ='bi_aqiarea_bottom')   # 空气质量描述     print (city.text + u'AQI指数:' + aqi.text + u'\n空气质量:' + quality[0].text + result.text)    print ('*'*20 + ctime() + '*'*20) def one_thread():   # 单线程    print ('One_thread Start: ' + ctime() + '\n')    getPM25('shenzhen')    getPM25('shanghai') def two_thread():   # 多线程    print ('Two_thread Start: ' + ctime() + '\n')    threads = []    t1 = threading.Thread(target=getPM25,args=('shenzhen',))    threads.append(t1)    t2 = threading.Thread(target=getPM25,args=('shanghai',))    threads.append(t2)     for t in threads:        # t.setDaemon(True)        t.start()        if __name__ == '__main__':     one_thread()    print ('\n' * 2)    two_thread()

windows,py:3.4.3。改成如下:就可以正常获取城市了,多谢各位大虾。。。 

参考:

转载于:https://my.oschina.net/u/252854/blog/391681

你可能感兴趣的文章
怎样关闭“粘滞键”?
查看>>
[转]React 教程
查看>>
拓扑排序介绍
查看>>
eclipse打开工作空间(workspace)没有任务反应
查看>>
使用Sybmol模块来构建神经网络
查看>>
字符串去分割符号
查看>>
WPF中,多key值绑定问题,一个key绑定一个界面上的对象
查看>>
UML类图简明教程
查看>>
java反编译工具(Java Decompiler)
查看>>
Android开发之自定义对话框
查看>>
微信Access Token 缓存方法
查看>>
Eclipsed的SVN插件不能识别之前工作空间的项目
查看>>
Linux 查看iptables状态-重启
查看>>
amazeui学习笔记一(开始使用2)--布局示例layouts
查看>>
c#中lock的使用(用于预约超出限额的流程)
查看>>
ODI基于源表时间戳字段获取增量数据
查看>>
并发容器之CopyOnWriteArrayList(转载)
查看>>
什么是AAC音频格式 AAC-LC 和 AAC-HE的区别是什么
查看>>
原创:goldengate从11.2升级到12.1.2
查看>>
Quartz
查看>>