AQI 爬虫_windows版

2024-01-22 07:38
文章标签 windows 爬虫 aqi

本文主要是介绍AQI 爬虫_windows版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系统:win10x64+python3.6
注意事项
webdriver特别是chromedriver的版本要与自己浏览器的版本一致。
time.sleep()是为了保证爬取成功,不然页面会一闪而过,什么都爬不到。
各个模块的下载安装请自行百度。
原网址已加密,需要使用pandas中的read_html函数读取表格内容。

import timeimport pandas as pd
import requests
from bs4 import BeautifulSoup
from urllib import parse
from selenium import webdriverdriver = webdriver.Chrome('D:\ProgramData\Anaconda3\selenium\chromedriver.exe')base_url = 'https://www.aqistudy.cn/historydata/daydata.php?city='
str_city = '北京'def get_month_set():month_set = list()for i in range(1, 10):month_set.append(('2014-0%s' % i))for i in range(10, 13):month_set.append(('2014-%s' % i))for i in range(1, 10):month_set.append(('2015-0%s' % i))for i in range(10, 13):month_set.append(('2015-%s' % i))for i in range(1, 10):month_set.append(('2016-0%s' % i))for i in range(10, 13):month_set.append(('2016-%s' % i))for i in range(1, 10):month_set.append(('2017-0%s' % i))for i in range(10, 13):month_set.append(('2017-%s' % i))return month_setdef get_city_set():str_file = r'city.txt'fp = open(str_file,'rb')city_set = list()for line in fp.readlines():city_set.append(str(line.strip(),encoding='utf-8'))return city_setmonth_set = get_month_set()
city_set = get_city_set()for city in city_set:file_name = city + '.csv'fp = open('aqi/' + file_name, 'w')fp.write('%s,%s,%s,%s,%s,%s,%s,%s,%s\n'%('日期','AQI','质量等级','PM25','PM10','SO2','CO','NO2','O3_8h'))#表头for i in range(len(month_set)):str_month = month_set[i]utf8_city = parse.quote(city)weburl = ('%s%s&month=%s' % (base_url,utf8_city,str_month))driver.get(weburl)time.sleep(1)dfs = pd.read_html(driver.page_source,header = 0)[0]for j in range(0,len(dfs)):date = dfs.iloc[j,0]aqi = dfs.iloc[j,1]grade = dfs.iloc[j,2]pm25 = dfs.iloc[j,3]pm10 = dfs.iloc[j,4]so2 = dfs.iloc[j,5]co = dfs.iloc[j,6]no2 = dfs.iloc[j,7]o3 = dfs.iloc[j,8]fp.write(('%s,%s,%s,%s,%s,%s,%s,%s,%s\n' % (date,aqi,grade,pm25,pm10,so2,co,no2,o3)))print('%d---%s,%s---DONE' % (city_set.index(city), parse.quote(city), str_month))fp.close()
driver.quit()

这篇关于AQI 爬虫_windows版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/632283

相关文章

Python3 BeautifulSoup爬虫 POJ自动提交

POJ 提交代码采用Base64加密方式 import http.cookiejarimport loggingimport urllib.parseimport urllib.requestimport base64from bs4 import BeautifulSoupfrom submitcode import SubmitCodeclass SubmitPoj():de

在 Windows 上部署 gitblit

在 Windows 上部署 gitblit 在 Windows 上部署 gitblit 缘起gitblit 是什么安装JDK部署 gitblit 下载 gitblit 并解压配置登录注册为 windows 服务 修改 installService.cmd 文件运行 installService.cmd运行 gitblitw.exe查看 services.msc 缘起

Windows如何添加右键新建菜单

Windows如何添加右键新建菜单 文章目录 Windows如何添加右键新建菜单实验环境缘起以新建`.md`文件为例第一步第二步第三步 总结 实验环境 Windows7 缘起 因为我习惯用 Markdown 格式写文本,每次新建一个.txt后都要手动修改为.md,真的麻烦。如何在右键新建菜单中添加.md选项呢? 网上有很多方法,这些方法我都尝试了,要么太麻烦,要么不凑效

Windows下Nginx的安装及开机启动

1、将nginx-1.16.1.zip解压拷贝至D:\web\nginx目录下。 2、启动Nginx,两种方法: (1)直接双击nginx.exe,双击后一个黑色的弹窗一闪而过。 (2)打开cmd命令窗口,切换到nginx目录下,输入命令 nginx.exe 或者 start nginx ,回车即可。 3、检查nginx是否启动成功。 直接在浏览器地址栏输入网址 http://lo

Python:豆瓣电影商业数据分析-爬取全数据【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】

**爬取豆瓣电影信息,分析近年电影行业的发展情况** 本文是完整的数据分析展现,代码有完整版,包含豆瓣电影爬取的具体方式【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】   最近MBA在学习《商业数据分析》,大实训作业给了数据要进行数据分析,所以先拿豆瓣电影练练手,网络上爬取豆瓣电影TOP250较多,但对于豆瓣电影全数据的爬取教程很少,所以我自己做一版。 目

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

C++实现俄罗斯方块(Windows控制台版)

C++实现俄罗斯方块(Windows控制台版) 在油管上看到一个使用C++控制台编写的俄罗斯方块小游戏,源代码200多行,B站上也有相关的讲解视频,非常不错,值得学习。 B站讲解视频地址为:【百万好评】国外技术大神C++游戏编程实战教程,油管580W收藏,新手10小时入门,并快速达到游戏开发能力(中英字幕) B站 CSDN博主千帐灯无此声还为此写了一篇博客:C++实现俄罗斯方块(源码+详解),讲

Golang 网络爬虫框架gocolly/colly(五)

gcocolly+goquery可以非常好地抓取HTML页面中的数据,但碰到页面是由Javascript动态生成时,用goquery就显得捉襟见肘了。解决方法有很多种: 一,最笨拙但有效的方法是字符串处理,go语言string底层对应字节数组,复制任何长度的字符串的开销都很低廉,搜索性能比较高; 二,利用正则表达式,要提取的数据往往有明显的特征,所以正则表达式写起来比较简单,不必非常严谨; 三,使

Golang网络爬虫框架gocolly/colly(四)

爬虫靠演技,表演得越像浏览器,抓取数据越容易,这是我多年爬虫经验的感悟。回顾下个人的爬虫经历,共分三个阶段:第一阶段,09年左右开始接触爬虫,那时由于项目需要,要访问各大国际社交网站,Facebook,myspace,filcker,youtube等等,国际上叫得上名字的社交网站都爬过,大部分网站提供restful api,有些功能没有api,就只能用http抓包工具分析协议,自己爬;国内的优酷、

Golang网络爬虫框架gocolly/colly(三)

熟悉了《Golang 网络爬虫框架gocolly/colly 一》和《Golang 网络爬虫框架gocolly/colly 二》之后就可以在网络上爬取大部分数据了。本文接下来将爬取中证指数有限公司提供的行业市盈率。(http://www.csindex.com.cn/zh-CN/downloads/industry-price-earnings-ratio) 定义数据结构体: type Zhj