没有合适的资源?快使用搜索试试~ 我知道了~
python+msql+pyecharts中国各省人口数量以及增长量的可视化分析
24 下载量 83 浏览量
2021-01-20
02:51:26
上传
评论 5
收藏 318KB PDF 举报
温馨提示
【声明:因时间关系,爬虫部分代码有所借鉴,本人主要想将该三部分结合起来,供读者学习交流,如有冒犯,尽请原谅!】 一、本地环境: 1.python 3.7 2.mysql 8.0.17(Navicat) 3.beautifulsoup 4-4.8.0 4.pyecharts-0.5.11 !!!(若pyecharts导入过程之中遇到较难解决的问题,读者可尝试Anaconda3,其自带pyecharts) 二、爬取数据放置MySQL import requests from bs4 import BeautifulSoup import re import pymysql db = pymysq
资源推荐
资源详情
资源评论
python+msql+pyecharts中国各省人口数量以及增长量的可视化分析中国各省人口数量以及增长量的可视化分析
【声明:因时间关系,爬虫部分代码有所借鉴,本人主要想将该三部分结合起来,供读者学习交流,如有冒犯,尽请原谅!】
一、本地环境:
1.python 3.7
2.mysql 8.0.17(Navicat)
3.beautifulsoup 4-4.8.0
4.pyecharts-0.5.11
!!!(若pyecharts导入过程之中遇到较难解决的问题,读者可尝试Anaconda3,其自带pyecharts)
二、爬取数据放置MySQL
import requests
from bs4 import BeautifulSoup
import re
import pymysql
db = pymysql.connect("localhost", "root", "123zwh", "zwh1")
cursor = db.cursor()
url = 'http://www.china-10.com/news/488659.html'
html = requests.get(url)
soup = BeautifulSoup(html.content, 'html.parser')
# 找到所有class为md_td的td元素
aaa = soup.find_all(name="td", attrs={"class": re.compile(r"md_td")})
# 检查索引,以便于后面爬取工作
# for n,i in enumerate(aaa):
# print(n,i.text)
demo_list = [] for i in aaa[4:128]:
demo_list.append(i.text)
while demo_list:
print(int(demo_list[0:4][0]), demo_list[0:4][1], int(float(demo_list[0:4][2]) * 10000),
int(float(demo_list[0:4][3]) * 10000))
# 测试数据类型
# print(type(demo_list[0:4][0]), type(demo_list[0:4][1]), type(demo_list[0:4][2]), type(demo_list[0:4][3]))
insert_message = ("INSERT INTO china_population VALUES(%s,%s,%s,%s)")
data = (int(demo_list[0:4][0]), demo_list[0:4][1], int(float(demo_list[0:4][2]) * 10000),
int(float(demo_list[0:4][3]) * 10000))
# 数据插入数据库
cursor.execute(insert_message, data)
db.commit()
del demo_list[0:4] # 关闭数据库
db.close()
数据库数据展示:
三、从MySQL获取数据,利用pyecharts绘制成图生成html
import pymysql
from pyecharts import Bar,Line
namelist = [] numlist = [] riselist=[]
db = pymysql.connect("localhost", "root", "123zwh", "zwh1")
cursor = db.cursor()
try:
sql_name = """ SELECT province FROM china_population """
cursor.execute(sql_name)
names = cursor.fetchall()
for name in names:
资源评论
weixin_38586428
- 粉丝: 7
- 资源: 904
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功