- 博客(0)
- 资源 (3)
- 收藏
- 关注
爬取全国空气质量监测网代码.py
爬取空气质量检测网的部分城市的历年每天质量数据
思路-----------------------------------------
从某城市的空气质量网页获取某市每月的链接,再爬取每个月的表格数据。连云港市:https://www.aqistudy.cn/historydata/daydata.php?city=连云港
连云港2014年5月的空气质量:https://www.aqistudy.cn/historydata/daydata.php?city=连云港&month=2014-05
遇到的问题-----------------------------------------
获取的网页中的表格数据隐藏,尝试requests无法获取。判断可能是动态加载的网页
尝试-----------------------------------------
1. 通过XHR,js查找隐藏数据的加载网页,没有找到。
2. 使用phantomjs.get() result=pd.read_html ,可以获得隐藏的表格数据,但是并不稳定,只是偶尔出现加载的表格数据,无法大规模的获取
解决方法-----------------------------------------
查找资料得知这个网站的表格数据在Console里的items中,
使用selenium的webdriver.firefox(),driver.execute_script("return items") 数据可获得。
仍遇到的问题:-----------------------------------------
爬取一个网页可获得数据,但是连续的获取网页,会出现两个错误。
1.Message: ReferenceError: items is not defined
2.connection refused
解决方法:
1.connection refused问题,可能是网页开太多,使用driver.quit()
2. 如果 execute_script 还是出错,可尝试pd.read_html获取信息。之前用phantomjs获取的时候输出空的表格,可能由于加载不够,用
Waite直到table出现之后再获取网页
Element=wait.until(EC.element_to_be_clickable((By.XPATH,"/html/body/div[3]/div[1]/div[1]/table/tbody")))
3.之后出现偶尔出现输出为空,使用循环,如果输出表格为空,再重新获取。
if len(result)>1:
filename = str(month) + '.xls'
result.to_excel('E:\python\案例程序\data\\' + filename)
print('成功存入'+filename)
driver.quit()
else:
driver.quit()
return getdata(monthhref,month)
2019-05-28
简明python教程中文版
《A Byte of Python》是一本由Swaroop C H编写,旨在于介绍如何使用 Python 语言进行编程的自由图书。它以教材与指南的形式为入门者介绍 Python 语言。如果你对电脑知识的了解仅限于如何保存文本文件的话,那这本书就是为你准备的。
2019-04-11
机器学习实战源代码
机器学习是人工智能研究领域中一个极其重要的研究方向,在现今的大数据时代背景下,捕获数据并从中萃取有价值的信息或模式,成为各行业求生存、谋发展的决定性手段,这使得这一过去为分析师和数学家所专属的研究领域越来越为人们所瞩目。
本书第一部分主要介绍机器学习基础,以及如何利用算法进行分类,并逐步介绍了多种经典的监督学习算法,如k近邻算法、朴素贝叶斯算法、Logistic回归算法、支持向量机、AdaBoost集成方法、基于树的回归算法和分类回归树(CART)算法等。第三部分则重点介绍无监督学习及其一些主要算法:k均值聚类算法、Apriori算法、FP-Growth算法。第四部分介绍了机器学习算法的一些附属工具。
2018-12-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人