- 博客(90)
- 收藏
- 关注
原创 一文学会Beautiful Soup
简单来说,Beautiful Soup就是Python的一个HTML或XML解析库,可以用它来方便地从网页中提取数据。官方解释如下:Beautiful Soup提供一些简单的、Python式的函数来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为UTF-8编码。
2024-07-26 18:15:52
41
1
原创 xpath难点解析
要确定这个节点,需要同时根据class和name属性来选择,一个条件是class属性里面包含li字符串,另一个条件是name属性为item字符串,二者需要同时满足,需要用and操作符相连,相连之后置于中括号内进行条件筛选。这样通过contains()方法,第一个参数传入属性名称,第二个参数传入属性值,只要此属性包含所传入的属性值,就可以完成匹配了。有时候,我们在选择的时候某些属性可能同时匹配了多个节点,但是只想要其中的某个节点,如第二个节点或者最后一个节点,这时该怎么办呢?
2024-07-25 22:33:02
49
原创 python抓取猫眼电影排行
offset=10,比之前的URL多了一个参数,那就是offset=10,而目前显示的结果是排行11~20名的电影,初步推断这是一个偏移量的参数。因为我们需要爬取的是TOP100的电影,所以还需要遍历一下,给这个链接传入offset参数,实现其他90部电影的抓取,此时添加如下调用即可。我们要提取出猫眼电影TOP100的电影名称、时间、评分、图片等信息,提取的站点URL为http://maoyan.com/board/4,提取的结果会以文件形式保存下来。获取源代码后,就需要解析页面,提取出我们想要的信息。
2024-07-25 20:23:59
243
原创 基于flask的天气数据可视化系统1.0
Flask是一个基于Python的Web开发框架,它以灵活、微框架著称,基于werkzeug的轻量级web框架,可提高web应用的开发效率。首先,需要实例化一个Flask对象,然后设置一个路由,路由就是处理url到Python函数之间关系的程序,在Flask框架中通过@app.route装饰器来表示。也就是说,客户端将请求发送给web服务器,web服务器再将请求发送给Flask程序示例,程序示例需要知道每个url请求要运行哪些代码,所以需要建立一个url到python函数的映射。
2024-07-25 16:16:24
935
原创 scrapy爬取城市天气数据
这里我们选择使用xpath表达式提取数据,打开weather.py,开始编写爬虫程序。第一步,构造url,使用for循环遍历所需爬取的城市和年月,并将构造出的url添加到start_urls列表中。第二步,编写parse函数,先使用xpath表达式取出所有的li标签,天气数据都在每一个li标签中。然后依次提取出所需的日期、最高温、最低温、天气情况、风力、风向等数据。首先,使用pycharm创建一个项目并打开该项目,创建的项目名称为scrapyProject。,这里的weather是spider的名字。
2024-07-25 10:53:56
276
原创 selenium采集招标网站公告
本次数据采集以某市建设工程交易服务中心数据为例,网址为“http://www.shcpe.cn/jyfw/xxfw/u1ai51.html”,网站首页如下图所示:采集到的字段如下图所示:本次数据采集使用的是selenium自动化网页爬虫技术,首先,在使用selenium打开网页之后,发现所需要的数据在一个iframe中,iframe的作用是在网页中嵌入另外一个网页,需要使用selenium切换到iframe中才能获取到其中的数据。为了方便起见,我们通过浏览器的开发者工具抓包,找到我们所需数据所在的网页,
2024-07-10 11:15:21
772
原创 基于Python爬虫的城市二手房数据分析可视化
二手房具有价格普遍偏低、地理位置较好的优势。然而,随着城市化进程加快,二手房交易市场鱼龙混杂,如何找到合适的房源信息已成为难题。随着互联网技术的发展,人们开始通过交易网站来了解二手房信息,网络上存在大量的房源,使用Python爬虫技术从中爬取有用的数据,再进行统计和可视化分析,可以把冗杂的信息变得精简。本文旨在使用这种技术,分析上海市的二手房源数量和平均房价,从户型、面积等多个角度分析二手房市场现状,以方便购房者决策,也为政府干预房地产业提供参考。先来看一下数据的情况以及可视化图表。
2024-07-05 17:54:57
1354
原创 pyecharts可视化案例大全(21~30)
随机生成点数据# 自定义标记点data=[opts.MarkPointItem(name="自定义标记点", coord=[x_data[2], y_data[2]], value=y_data[2])]# 自定义图形# 添加自定义坐标点return geo# 设置半径范围,0%-100%return pie# 自定义数据标签return pie。
2024-07-05 15:44:26
240
原创 pyecharts可视化案例大全(11~20)
line.add_yaxis('样式1',curve=0,line.add_yaxis('样式2',curve=0.5,line.add_yaxis('样式3',curve=1,
2024-07-05 15:14:44
175
原创 pyecharts可视化案例大全(1~10)
自定义坐标轴标签,在年份后加上`年`axislabel_opts=opts.LabelOpts(formatter='{value}年')))return bar。
2024-07-04 22:25:19
102
原创 基于Python爬虫的论文文献检索系统
要想快速、详细了解与所写论文相关的文献,掌握文献检索方法是重要的一环,只有选择了科学有效的检索方法,才可以快、精、准地获取大量所需要文献信息,提高检索效率。首先,需要实例化一个etree对象,将响应的内容作为参数传递到etree对象中,然后使用xpath表达式获取到文献的BibTeX格式的链接和文献的标题信息,把对应的链接和标题信息放到一个列表中。如果输入的是关键词的话,则处理前十条信息。在上图的函数中,还实现了对会议论文的booktitle的修改,实现了arxiv的论文格式中的journal内容的修改。
2024-06-30 21:34:19
1007
原创 boss直聘招聘数据爬取及可视化分析2.0
笔者在前两篇介绍boss直聘招聘数据爬取和可视化分析的博客的基础上,对代码和功能进行了完善。在数据爬取的模块,代码更加简洁易懂,且性能更加稳定;在数据可视化模块,分析角度更加多维,先来看一下可视化图表吧!
2024-06-27 17:45:47
510
原创 boss直聘招聘数据可视化分析
这里主要对薪水列进行处理,为方便处理,将日薪和周薪的数据删除,将带有13薪和14薪的数据也删除,计算出最低薪资、最高薪资和平均薪资三列。
2024-06-26 19:46:17
321
原创 selenium爬取boss直聘招聘岗位数据
再来看一下boss直聘的页面,这时需要我们已经完成了城市的选择,将岗位名称输入到搜索框中,点击搜索之后切换到第2页。这时我们将url复制。使用selenium操作浏览器打开每一个页面之后,执行JavaScript代码将滚动条逐渐滑动至最底部,然后获取当前页面源代码,获取页面源代码之后提取页面中的数据。
2024-06-26 15:42:32
352
原创 搜狗微信文章数据爬取可视化
这里使用pandas读取数据,读取之后先将发布时间一列转换为pandas的datetime格式,然后在利用datetime的时间访问器dt获取到年份和月份,格式化为“%Y-%m”的形式,再利用pandas的value_counts()函数对新生成的年月一列进行统计,统计的个数即为该月发表的文章的数量。按下F12召唤出浏览器开发者工具,刷新页面抓包,在network选项卡下找到第一个html文档类型的包,查看该数据包的Response,发现所需数据都在这个包中,请求头信息在Headers中。
2024-06-26 10:42:04
66
原创 Selenium、chromedriver安装配置
Selenium是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的点击、下拉等操作。对于一些JS动态渲染的页面来说,这种抓取方式非常有效。
2024-06-24 22:43:11
350
原创 Python抓取高考网图片
本次采集的目标是高考网(http://www.gaokao.com/gkpic/)的图片,实现图片自动下载。高考网主页如下图:爬取的流程包括寻找数据接口,发送请求,解析图片链接,向图片链接发送请求获取数据,最后保存数据。
2024-06-21 17:43:34
4732
原创 python爬取飞卢小说网免费小说
首先看一下我们需要爬取的飞卢小说网的免费小说《全民:开局邀请光头强挑战只狼》网址,如下图所示:点击第一章,按F12键打开浏览器开发者工具,再点击开发者工具左上角的小箭头,找到小说内容在网页中所在的位置,如下图所示:# 提取小说文字部分内容content = re.sub('【恭喜宿主.*', '', content).strip()接下来,回到目录页,找到章节url和标题所在的位置,如下图所示:# 获取目录页网页源代码# 提取所有章节的链接和标题links = []
2024-06-21 11:58:42
311
原创 基于Python爬虫的城市天气数据可视化分析
本项目爬取数据的目标网站是天气网(https://www.tianqi.com),爬取的是泰安市2022年的天气数据,使用pandas进行数据处理,使用pyecharts进行绘图。先来看一下绘制的几个可视化图表。天气轮播图:温度分布图:Python 是一种跨平台的计算机编程语言,具有解释性、变异性、交互性和面向对象的特点。相比使用其他语言,使用Python编写的代码结构清晰、可读性强、易于调试和扩展。Python拥有丰富的内置库和第三方库,可以满足各种需求。
2024-06-21 10:10:01
1132
1
原创 多线程爬取书趣阁小说网小说
接下来,使用requests模块向这个数据包的地址发送请求,携带请求头headers,经测试,最好再多携带一个cookie参数。定义一个downloads函数,将q队列中的章节页url逐个取出,并向url发送requests的get请求,获取到数据之后用xpath表达式解析数据,存入txt文件中。如下图所示,以书趣阁小说网的其中一篇小说《斗破之无上之境》为例,目标是爬取该小说的所有章节内容,并把内容存储到一个txt文件中。
2024-06-20 21:51:30
354
原创 scrapy爬取豆瓣书单存入MongoDB数据库
爬取的目标url是https://www.douban.com/doulist/45298673/,完整代码放在最后,使用命令。需要获取的字段有书名,评分,评论人数,作者国籍(未标明国籍的是中国),出版年。创建名为douban的爬虫,起始域名是douban.com。来创建scrapy项目,再通过命令。使用navicat新建数据库参照。MongoDB数据库的安装参照。MongoDB的添加数据参照。安装scrapy库。
2024-06-15 13:48:40
223
原创 Python爬取城市空气质量数据
首先找到所有的tr标签,每一个tr标签下对应一天的空气质量情况,然后遍历每一个tr标签,tr标签下的每一个td标签对应的依次是日期、空气质量等级、AQI指数等数据,将数据依次提取出来,使用get_text()方法获取每一个td标签下的文本数据。这是一个get请求,在发送请求时需要携带cookie、User-Agent等参数,当然,后端服务器可能也会检测其它参数,具体需要哪些参数需要一一尝试,或者直接携带所有参数。数据的持久化保存使用的是python自带的csv库,保存数据至csv文件。
2024-06-07 22:49:47
1144
原创 SVM模型实现城镇居民月平均消费数据分类
支持向量机是由感知机发展而来的机器学习算法,属于监督学习算法。支持向量机具有完备的理论基础,算法通过对样本进行求解,得到最大边距的超平面,并将其作为分类决策边界。支持向量机(Support Vector Machines, SVM)在解决小样本、线性、非线性及高维模式识别领域表现出特有的优势。SVM是一种研究小样本机器学习模型的统计学习方法,其目标是在有限的数据信息情况下,渐进求解得到最优结果。其核心思想是假设一个函数集合,其中每个函数都能取得小的误差,然后从中选择误差小的函数作为最优函数。
2024-06-06 22:51:45
256
原创 Python采集东方财富网股票数据建立LSTM模型预测
实验结果表明,LSTM模型在预测股票价格方面展现出了卓越的性能。预测价格与实际价格高度吻合,证明了模型在捕捉股票价格变化趋势方面的有效性。同时,模型在测试数据上取得了较低的损失值和较高的准确率(以1-MAPE衡量),具体数值为模型损失0.0006和模型准确率95.7%,进一步验证了模型的稳定性和可靠性。通过本次实验,我们可以得出以下结论:LSTM模型能够充分利用历史数据中的时间序列信息,有效地预测股票价格的未来走势。
2024-06-06 10:07:53
222
原创 anaconda创建虚拟环境并配置到JupyterNotebook
其中,base环境即是当前的环境,也是anaconda自带的环境,其他环境例如pssquant环境是自己创建的虚拟环境。如上图所示,在开始菜单中扎到Anaconda Prompt(Anaconda)并打开。在命令行窗口中输入命令。接下来,再运行JupyerNotebook的时候,选择内核时就会出现test啦!在test虚拟环境下输入命令。安装ipykernel库。
2024-06-04 12:00:57
236
原创 sklearn基于内容的推荐算法
假设你喜欢到一家麻辣香锅店吃麻辣香锅,这家店的老板要开发一个菜品推荐程序。老板先整理出店里各种菜的口味特点,如脆的、甜的、辣的等记录到数据文件中。在顾客点菜时,程序分析该顾客的历史评价得知顾客喜欢的菜品,并据此推荐他可能喜欢的其他菜品。推荐算法使用的是各个菜品的口味特征(taste),为文本类型。然后使用距离度量方法,计算相似度,进行推荐。接下来使用sklearn提供的pairwise_distances()函数计算向量间的距离。可以看出,程序可以对顾客评分较高的“芹菜”推荐出相似度较高的菜品。
2024-05-31 23:09:34
411
原创 pyinstaller将py文件打包成exe
python文件需要在python环境中运行,也就是需要安装python解释器。有时我们自己写的python程序需要分享给自己的朋友、同事或者合作伙伴,而他们的电脑上没有python环境或者对python使用很陌生,这时候为了让对方方便地使用我们的程序,需要将其打包成exe文件。运行结束之后,在PyInstaller文件夹下的dist文件下就可以看到science.exe文件了,双击即可使用。
2024-05-31 14:12:27
111
原创 python爬取每日天气情况
本次爬取的目标数据来源于天气网,数据所在的页面如下图所示,本次任务较为简单,按照正常操作流程操作即可,即抓包分析数据接口,发送请求获取数据,解析数据并持久化存储。
2024-05-30 21:11:22
134
原创 异步爬取城市天气数据
首先,观察页面,如下图所示,我们所需要的数据是日期、最高温、最低温、天气、风力风向和空气质量指数:查询其他月份或者年份的数据可以发现,页面的URL没有发生变化,说明页面是异步加载的。通过开发者工具抓包可以轻松的抓到数据所在的XHR数据包。请求头和参数的构造这里不再详细叙述,直接提供完整代码。
2024-05-30 19:20:51
38
原创 python爬取豆瓣电影top250
本次爬取的目标是豆瓣电影top250,网址为“https://movie.douban.com/top250?爬取的流程包括寻找数据接口,发送请求获取响应,解析数据以及持久化存储。发送请求使用的是requests,解析数据使用的是BeautifulSoup。
2024-05-30 13:39:01
50
原创 python采集晋江文学城小说数据
本次数据采集的目标是晋江文学城小说数据,采集的流程包括寻找数据接口、发送请求获取响应、解析数据和持久化存储,先来看一下数据情况,完整代码附后:
2024-05-30 12:46:16
1210
原创 python采集汽车价格数据
本次数据采集的目标是车主之家汽车价格数据,采集的流程包括寻找数据接口、发送请求获取响应、解析数据和持久化存储,先来看一下数据情况,完整代码附后:
2024-05-30 12:36:39
735
原创 城市空气质量数据爬取分析可视化
先来看一下数据情况以及可视化效果,本项目使用了pyecharts绘制了日历图、雷达图、折线图、柱状图、饼图和平行坐标系。.ipynb文件,需要在jupyternotebook环境下逐步运行。
2024-05-27 23:33:30
1127
原创 sklearn线性回归--岭回归
但在岭回归中,对系数(w)的选择不仅要在训练数据上得到好的预测结果,而且还要拟合附加约束,使系数尽量小。直观上来看,这意味着每个特征对输出的影响应尽可能小(即斜率很小),同时仍给出很好地预测结果。这种约束就是正则化。由上图可以看出,Ridge模型在训练集上的分数要低于LinearRegression,但在测试集上的分数更高。复杂度更小的模型意味着在训练集上的性能更差,但泛化性能更好。对于非常小的alpha值(比如0.1),系数几乎没有受到限制,我们得到一个与LinearRegression类似的模型。
2024-05-27 16:26:27
84
原创 sklearn监督学习--k近邻算法
这一算法对于有很多特征(几百或更多)的数据集往往效果不好,对于大多数特征的大多数取值都为0的数据集来说,这一算法的效果尤其不好。与之相反,如果你的模型过于简单,那么你可能无法抓住数据的全部内容以及数据中的变化,你的模型甚至在训练集上的表现就很差。但是,如果我们的模型过于复杂,我们开始过多关注训练集中每个单独的数据点,模型就不能很好地泛化到新数据上。k-NN算法最简单的版本只考虑一个最近邻,也就是与我们想要预测的数据点最近的训练数据点。可以发现,左上角新数据点的预测结果与只用一个邻居时的预测结果不同。
2024-05-22 20:33:09
419
1
原创 Python采集安居客租房信息
本次采集的需求就是获取到页面中的所有信息:将数据采集好之后保存为如下csv文件:爬取的流程不再展开分析,完整代码附后。
2024-05-22 10:26:58
94
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人