当前位置:   article > 正文

Python爬虫&可视化第1季-城市旅游数据分析

基于python爬虫的热门旅游城市以及数据分析可视化的毕设个人总结

前言:

本着跟大家一同探讨学习的态度,今后几期文章会更新一些用python实现爬虫&可视化的文章。Python对于本人来讲也是一个在逐渐学习掌握的过程,这次的内容就从旅游开始讲起,进入正文前首先附(fang)上(du)最令我垂涎欲滴的海鲜盛宴。

640?wx_fmt=jpeg

数据爬取:

最近几天朋友圈被大家的旅行足迹刷屏了,惊叹于那些把全国所有省基本走遍的朋友。与此同时,也萌生了写一篇旅行相关的内容,本次数据来源于一个对于爬虫十分友好的旅行攻略类网站:蚂蜂窝

PART1:获得城市编号

蚂蜂窝中的所有城市、景点以及其他的一些信息都有一个专属的5位数字编号,我们第一步要做的就是获取城市(直辖市+地级市)的编号,进行后续的进一步分析。

640?wx_fmt=png

640?wx_fmt=png

以上两个页面就是我们的城市编码来源,需要首先从目的地页面获得各省编码,之后进入各省城市列表获得编码。过程中需要Selenium进行动态数据爬取,部分代码如下:

  1. def find_cat_url(url):  
  2.    headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'}      
  3.    req=request.Request(url,headers=headers)  
  4.    html=urlopen(req)  
  5.    bsObj=BeautifulSoup(html.read(),"html.parser")
  6.    bs = bsObj.find('div',attrs={'class':'hot-list clearfix'}).find_all('dt')
  7.    cat_url = []
  8.    cat_name = []
  9.    for i in range(0,len(bs)):
  10.        for j in range(0,len(bs[i].find_all('a'))):
  11.            cat_url.append(bs[i].find_all('a')[j].attrs['href'])
  12.            cat_name.append(bs[i].find_all('a')[j].text)
  13.    cat_url = ['http://www.mafengwo.cn'+cat_url[i] for i in range(0,len(cat_url))]  
  14.    return cat_url
  15. def find_city_url(url_list):
  16.    city_name_list = []
  17.    city_url_list = []
  18.    for i in range(0,len(url_list)):            
  19.        driver = webdriver.Chrome()
  20.        driver.maximize_window()
  21.        url = url_list[i].replace('travel-scenic-spot/mafengwo','mdd/citylist')
  22.        driver.get(url)
  23.        while True:
  24.            try:
  25.            
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/847242
推荐阅读
相关标签
  

闽ICP备14008679号