软件建立所需的工具及其版本
编写环境与
IDE
Python3.5.2
Windows10
PyCharm
2016.3
Sublime
Text3
第三方库与版本
Requests
2.12.1
BeautifulSoup
4.5.1
PYQT5
5.8.1
Pyinstaller
库的作用
用于爬虫编写
用于爬虫编写
用于软件
GUI
设计
用于封装
python
程序
1.1
百度地图数据的抓取
一般我们研究区域污染状况成因时,
需要找出污染源的坐
标,
就宏观研究而言,
百度地图是一个很好的选择。经过分析,
百度地图提供一个接口:
http://map.baidu.com/wmap=1&req?
flag=pcmap&biz=1&from=webmap&da_par=direct&pcevaname=
pc4.1&qt=con&from=webmap&c=233&wd={}&pn={}
。其中
wd
代
表的是所需的查找内容,
pn
用于翻页。需要指出的是,
如果访
问过于快速,
会出现访问不成功现象,
这时需要放慢抓取速度
与设置断点续传的功能
[3]
。抓取数据坐标是百度墨卡托坐标,
与经纬度坐标有很大出入,
需要进行坐标转换。
1.2
空气质量数据的抓取设计
http://www.pm25.in/
。
在抓取中由于
PC
端的 页采取的
Ajax
所以学采用
Selenium
与
Phantomjs
抓取,
但是会大量占用电脑内存与
CPU
。故笔者将
Headers
设置成手机以便正常抓取。由于代码较长不在此
放出。
1.3
空间热度图与点密度图绘制的设计
可以运用
Python
的标准库
matplotlib
绘制空间的点密度,
热
密度图,
及将上述地图中收集的数据反应的地图中。本软件只
是应用
hexbin
函数做了简单的绘制。由于需要将
matplotlib
嵌
入
PyQt5
开发的窗口内代码较长,
不再给出。
2
基于
PyQt5
的
GUI
设计
2.1
功能的描述
运用
PyQt5
进行
GUI
设计,
将上述
6
个爬虫进行封装
[2]
。其
中空气质量按钮对应空气质量数据收集
(自动每一小时收集一
次)
。其中,
坐标转换按钮为百度地图收集的数据的坐标转换
(需要
key
)
。
2.2
界面的设计与运行情况
为了简化界面,
将界面中的菜单栏与状态栏统统删除,
只
留下
6
个爬虫的相关按钮并尽可能放大
,
,
如图
2
。为了保证界
面的美观性,
不再允许用户将界面最大化,
即固定主界面的大
小。其中空气质量数据,
气象数据,
百度地图,
高德地图的二级
界面基本一致,
输入爬取内容与保存位置点击开始即可。
对于地图绘制功能,
是本软件实现的难点内容。需要将
matplotlib
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览214446 人正在系统学习中 相关资源:易语言-易语言实现文章秒收软件-其它代码类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!