近年来,南京因其深厚的历史文化底蕴、丰富的美食文化、时尚潮流元素、众多的网红打卡地以及便捷的交通网络,吸引了越来越多的游客前来游览和体验,已成为一座名副其实的网红城市。而南京地铁每日的客流统计也从交通方面来验证这座城市的活力。本期,我们就从某网站上爬取南京地铁每日的客流量,看看到底每天有多少人乘坐南京地铁,感受一下城市的活力。一、目标网站分析
我们选取的是某浪微博上的南京地铁官微,首先我们要登录一下微博账号呦:
进入官微,在搜索栏搜索“昨日客流”:
这样每日的客流数据就出来了,分析一下网站:
数据封装在json中,这就比较容易了,另外,网站爬取的网址也比较友好,一眼就能看出该改哪儿?
二、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文件。
搞定了,数据出来了 。
三、结语后续,我们将通过数据提取和数据分析,看看南京地铁在不同日期的客运量变化趋势。这些数据可以帮助我们了解地铁系统的使用情况,看看一座城市日常人口流动情况,反应一下城市活力。