Python分析中国大陆各直辖市及各省省会的平均工资与平均房价

Python分析中国大陆各直辖市及各省省会的平均工资与平均房价 研究目的 近期网络上关于“躺平”的争论很多,但可以看出支持“躺平”的多是以90后为主的年轻人

本文包含相关资料包-----> 点击直达获取<-------

Python分析中国大陆各直辖市及各省省会的平均工资与平均房价

研究目的

近期网络上关于“躺平”的争论很多,但可以看出支持“躺平”的多是以90后为主的年轻人,反对“躺平”的是中老年人,而让年轻人“躺平”很大的一个原因便是高昂的房价。因此我想爬取相对客观的数据,看看各直辖市和各省省会的平均工资与房价是多少,分析房价是不是真的高到买不起,高到让年轻人躺平的地步。

爬取数据的来源

爬取平均工资的网站:薪酬网

爬取平均房价的网站:安居客

很诡异的一件事是在安居客上查询不到深圳的平均房价,但深圳既不是直辖市也不是省会城市故我不再深究

爬取数据中遇到的问题

在大数据越来越重要,爬虫技术越来越先进的今天,反爬虫的手段也愈加高明。在爬取薪酬网的数据时,即使伪装了头部信息、设置了休眠时间依然会被识别为爬虫;而在爬取安居客数据时,它不仅会设置验证信息,网页还会动态变化。比如某一时刻,福州网页的网址为https://fuzhou.anjuke.com/market/而过了某个时间段后其网址就变为https://fz.anjuke.com/market/,我只好先把这31个城市的平均工资和平均房价的网页先爬取下来再爬取相关的数据。

爬取相关数据

爬取平均工资:

Average_wage_get.py,输出data1

代码:

```python text = get_text_from_saved_html(city_lst[i]) # 从保存的html里获取网页内容 soup = BeautifulSoup(text, 'html.parser') city_name = '' # 创建一个空字符串用来存放城市字符串 wage_str = '' # 创建一个空字符串用来存放房价字符串

sf1 = soup.find(class_="card-header") # 查找城市名所在位置 st1 = sf1.text.replace(" ", "").strip() # 去掉空格、换行符等 flag = 0 while not st1[flag].isdigit(): city_name += st1[flag] flag += 1 city_name.replace('市', '') city.append(city_name)

sf2 = soup.find(class_="text-center justify-content-between") # 查找平均工资所在位置 st2 = sf2.text.replace(" ", "").strip() # 去掉空格、换行符等 flag = 0 while st2[flag] != "C": wage_str += st2[flag] flag += 1 wage_num = eval(wage_str) # 将字符串转换为数字 wage.append(wage_num) ```

爬取平均房价:

Average_housing_price_get.py,输出data2

代码:

```python city = [] # 创建一个列表用来存放城市 housing_price = [] # 创建一个列表用来存放房价

for i in range(len(city_lst)): # 遍历传入的城市列表,查找保存的网页中城市名及对应房价 text = get_text_from_saved_html(city_lst[i]) # 从保存的html里获取网页内容

soup = BeautifulSoup(text, 'html.parser')
sf = soup.find(class_="highLight")  # 根据浏览器检查网页内容确定了所要寻找的信息所在位置
city_name = ''  # 创建一个空字符串用来存放城市字符串
housing_price_str = ''  # 创建一个空字符串用来存放房价字符串

st = sf.text.replace(" ", "").strip()   # 去除空格、换行符等
flag = 0   # 标记位置
while not st[flag].isdigit():  # 获取城市字符串
    city_name += st[flag]
    flag += 1
city_name.replace('市', '')
city.append(city_name)

for j in range(-9, -4):  # 获取房价字符串
    housing_price_str += st[j]
housing_price_num = eval(housing_price_str)  # 将房价由字符串型转换为数字型,为后续计算做准备
housing_price.append(housing_price_num)

```

数据处理

从Average_wage_get.py导入data1,从Average_housing_price_get.py,输出data1,在data_handle.py里用pandas输出类型为DataFrame的data保存到.csv和.xlsx文件

代码:

```python city_lst = [] # 省会直辖市列表 average_wage_lst = [] # 平均工资列表 average_housing_price_lst = [] # 平均房价列表 time_lst = [] # 不吃不喝买房所需时间 data = dict() # 创建一个数据字典用来汇总所有的数据

for i in data2.keys(): # 从数据2获取键放入城市列表中 city_lst.append(i) for i in data1.values(): # 从数据1获取值放入平均工资列表中 average_wage_lst.append(i) for i in data2.values(): # 从数据2获取值放入平均房价列表中 average_housing_price_lst.append(i) for i in range(len(city_lst)): # 计算每个城市在不吃不喝(即工资完全用来买房)的情况下用平均工资买房要花多长时间 months = round(average_housing_price_lst[i]*100/average_wage_lst[i]) + 1 # 因为房贷少交一个月都不行所以四舍五入+1 years = round(months/12) + 1 # 同上 time_lst.append(years)

data["city"] = city_lst # 城市字典 data["wage"] = average_wage_lst # 平均工资字典 data["housing_price"] = average_housing_price_lst # 平均房价字典 data["time"] = time_lst # 买房花费时间字典

df = pd.DataFrame(data) # 创建DataFrame,输出为.csv和.xlsx文件 df.to_csv('大陆各省会直辖市平均工资及平均房价.csv', encoding="utf-8", index=False) df.to_excel('大陆各省会直辖市平均工资及平均房价.xlsx') ```

数据展示

在Data_Show.py中读取大陆各省会直辖市平均工资及平均房价.xlsx,用matplotlib.pyplot模块作图。

参考文献

  • 区域房产信息统计系统设计与实现(大连理工大学·张玉梅)
  • 基于J2EE的房产交易平台的研究与实现(复旦大学·叶頲)
  • 房地产管理信息系统的设计与实现(北京邮电大学·张乐)
  • 基于SSH框架的工资管理系统的设计与实现(电子科技大学·张祎荻)
  • 平潭建设局人力资源管理系统的设计与实现(电子科技大学·高陈晟)
  • 房地产销售信息管理系统的设计与实现(西南交通大学·文燕)
  • 基于B/S的公司工资信息管理系统设计与实现(大连理工大学·吴万强)
  • 基于.NET的住房货币化管理信息系统的设计与实现(吉林大学·李剑锋)
  • 基于SSH 的人事工资管理系统的研究与开发(中国海洋大学·李萍)
  • 网络流量统计分析系统(吉林大学·石景龙)
  • 基于web的房屋租赁系统的设计与实现(华中科技大学·姜子旋)
  • 基于web的房屋租赁系统的设计与实现(华中科技大学·姜子旋)
  • 昆钢房地产公司成本管理系统的设计与实现(山东大学·许向玉泉)
  • 哈尔滨市房产权属登记业务信息管理系统的设计与实现(电子科技大学·李洪强)
  • 基于web的房屋租赁系统的设计与实现(华中科技大学·姜子旋)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:代码驿站 ,原文地址:https://bishedaima.com/yuanma/36011.html

相关推荐

  • 构造正规式r1|r2

    近年来,随着计算机科学领域的迅速发展,正规式与自动机理论作为编译原理等诸多领域的基础,备受关注,在编写程序中,正规式的构造是一项常见而且关键的任务,特别是在涉及到复杂文本匹配与处理的场景下
    2024年05月07日
    7 1 3
  • 基于Python实现的电影数据可视化分析系统

    1, 引言 1,1 编写目的 使读者能够了解MOVA项目的概况 1,2 读者对象 电影行业从业人员,电影爱好者 1,3 软件项目概述 项目名称:Movie Visualization Analysis system (MOVA) 用户单位:个人用户 开发单位:HITSZSE_group10 功能用途:数据查询
    2024年05月14日
    9 1 1
  • 共享汽车管理系统

    这是一个🔥🔥基于SpringBoot框架的共享汽车管理系统设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    2 1 1
  • 基于SpringBoot框架的学生干部管理系统

    这是一套采用Java语言开发的🎓学生干部管理系统源代码,基于流行的SpringBoot框架构建,融合了Vue技术,开发工具为Idea或Eclipse,此系统适合作为毕业设计或课程设计的任务
    2024年05月23日
    3 1 2
  • 基于SpringBoot框架的在线兼职网

    这是一套采用Java编程语言构建的🔥🔥SpringBoot为核心的在线兼职网站源代码🔥🔥,该项目运用了SpringBoot框架和Vue,js技术,开发工具为Idea或Eclipse
    2024年05月23日
    20 1 3
  • 基于Java+SSH的在线教学交流平台、基于JavaWeb的在线教学交流平台

    这是一个🔥🔥基于SSH的在线教学交流平台,基于JavaWeb的在线教学交流平台🔥🔥的项目源码,开发语言Java,开发环境Idea/Eclipse,这个 在线教学交流开发技术栈为SSH项目
    2024年05月23日
    1 1 1
  • 基于Python实现简易C语言编译器

    参考文献 基于Python的非结构化数据检索系统的设计与实现(南京邮电大学·董海兰) 山西思软科技实训管理系统的设计与实现(大连理工大学·李勇兵) 基于C#的甜品店现金交易系统的设计与实现(电子科技大学·张晟) 基于Web系统的计算机编程语言书籍交流系统设计与开发(吉林大学·刘峰兵) 基于动易网的B/S结构学校网站设计与实现(吉林大学·於月红) 在线考试系统的设计与实现(山东大学·张莉) 基于ASP
    2024年05月14日
    2 1 1
  • 基于javaweb开发图书管理系统

    book-management-system javaweb,图书管理系统,软件设计与分析,期末大作业 前言 本项目是一个基于 javaWeb 的图书管理系统
    2024年05月14日
    4 1 1
  • python爬取双色球数据更新及数据库使用

    python爬取双色球数据更新及数据库使用 解析网站并获取数据 python # 彩票数据所在的url url = 'http://datachart
    2024年05月14日
    3 1 2
  • 基于JSP实现的网上点餐系统

    基于JSP实现的网上点餐系统 1 软件项目开发模式 螺旋开发模式 适合于项目前期部分需求不确定的情况, 对于每一个模块一个个开发:分析
    2024年05月14日
    18 1 2

发表回复

登录后才能评论