Python:南京地铁每日客流数据的爬虫实现

简介: Python:南京地铁每日客流数据的爬虫实现

近年来,南京因其深厚的历史文化底蕴、丰富的美食文化、时尚潮流元素、众多的网红打卡地以及便捷的交通网络,吸引了越来越多的游客前来游览和体验,已成为一座名副其实的网红城市。而南京地铁每日的客流统计也从交通方面来验证这座城市的活力。本期,我们就从某网站上爬取南京地铁每日的客流量,看看到底每天有多少人乘坐南京地铁,感受一下城市的活力。一、目标网站分析

我们选取的是某浪微博上的南京地铁官微,首先我们要登录一下微博账号呦:

d6e1e894992ade273fb6ca93684566a7.png

进入官微,在搜索栏搜索“昨日客流”:

d236b5bdde8806c882cc25570979a416.png

这样每日的客流数据就出来了,分析一下网站:

4bc0ed565b554ee7ac5d93918759a03d.png

数据封装在json中,这就比较容易了,另外,网站爬取的网址也比较友好,一眼就能看出该改哪儿?

70d9f0d70978f37f1e0cbe06d642b7f7.png

二、python的爬虫实现直接上代码了:

import requestsimport jsonimport time
def crawl(url):    headers={    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36 QIHU 360SE',    'Cookie':'SINAGLOBAL=4986938885267.034.1611557075208; UOR=,,www.newsmth.net; SCF=AsteYIygKWLb1c7isTSbcSKGhzx3uIincJoyZ8QqncWiH8JZVvSd5d-3wOUZz4BVRvVk9aP6MpoEAPFjamP1PsQ.; PC_TOKEN=c9961d4443; XSRF-TOKEN=7DVupLijZ8HS-obwAsgng38K; SUB=_2A25LPfNwDeRhGeVO6FoT9SfKyz-IHXVoMwq4rDV8PUNbmtB-LXHMkW9NTWYxRiVpMZmEonNCGtdVpPrtainOzX9C; SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9WhBSrc87.WA6LWkHooL27Ag5JpX5KzhUgL.Foe7e0nESK.cehe2dJLoI7vrUgxydJyLMJvk1KqcS05t; ALF=02_1717637152; _s_tentry=weibo.com; Apache=1847197916327.9805.1715045303546; ULV=1715045303599:122:1:1:1847197916327.9805.1715045303546:1712712106925; WBPSESS=c30qXQjimzq8VTt-alFMUqrIiZPhaHN2YGlFokb6mifNaVk8myguMla7TKnc865OcxCupPzoc-PdkKjmpxVe3qpOkJDdY3-lqSw88SW4iwqa3A64rzvumW3xLecoRGOzUM6tKSv78K8Bu3oxV3JTqw=='}    # 发送GET请求    response = requests.get(url,headers=headers)    j_data=json.loads(response.text)    f=open('./南京地铁线路每日客流.txt','a+',encoding='utf-8')    for i in j_data['data']['list']:        f.write('%s' % (i['text_raw']))        f.write("\n")
for i in range(1,1000):    print(i)    url=f"https://weibo.com/ajax/statuses/searchProfile?uid=2638276292&page={i}&q=%E6%98%A8%E6%97%A5%E5%AE%A2%E6%B5%81"    crawl(url)    time.sleep(0.5)f.close()

暴力了一把,直接把循环网址弄到了1000,实际操作下来,可能只到53页左右就停止了,看看txt文件。

c332323dbe77571a01993bbf845076a5.png

搞定了,数据出来了

三、结语后续,我们将通过数据提取和数据分析,看看南京地铁在不同日期的客运量变化趋势。这些数据可以帮助我们了解地铁系统的使用情况,看看一座城市日常人口流动情况,反应一下城市活力。

相关文章
|
3天前
|
数据采集 Web App开发 监控
高效爬取B站评论:Python爬虫的最佳实践
高效爬取B站评论:Python爬虫的最佳实践
|
10天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
50 6
|
1天前
|
数据采集 存储 XML
Python爬虫定义入门知识
Python爬虫是用于自动化抓取互联网数据的程序。其基本概念包括爬虫、请求、响应和解析。常用库有Requests、BeautifulSoup、Scrapy和Selenium。工作流程包括发送请求、接收响应、解析数据和存储数据。注意事项包括遵守Robots协议、避免过度请求、处理异常和确保数据合法性。Python爬虫强大而灵活,但使用时需遵守法律法规。
|
2天前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
4天前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
4天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
11 1
|
8天前
|
数据采集 JSON 测试技术
Python爬虫神器requests库的使用
在现代编程中,网络请求是必不可少的部分。本文详细介绍 Python 的 requests 库,一个功能强大且易用的 HTTP 请求库。内容涵盖安装、基本功能(如发送 GET 和 POST 请求、设置请求头、处理响应)、高级功能(如会话管理和文件上传)以及实际应用场景。通过本文,你将全面掌握 requests 库的使用方法。🚀🌟
29 7
|
5天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
5天前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
11天前
|
数据采集 Web App开发 前端开发
Python爬虫进阶:Selenium在动态网页抓取中的实战
【10月更文挑战第26天】动态网页抓取是网络爬虫的难点,因为数据通常通过JavaScript异步加载。Selenium通过模拟浏览器行为,可以加载和执行JavaScript,从而获取动态网页的完整内容。本文通过实战案例,介绍如何使用Selenium在Python中抓取动态网页。首先安装Selenium库和浏览器驱动,然后通过示例代码展示如何抓取英国国家美术馆的图片信息。
32 6
下一篇
无影云桌面