嗨害大家好啊,我小熊猫又来整活啦🖤
不知道大家喜不喜欢吃土豆?
可以炸薯条、做土豆饼、炒土豆丝儿~
还可以拿来当诱饵去杀虫~
简直是居家必备之良品啊有木有~
那么这土豆的价格怎么样呢?
诶!我小熊猫今天就来采集一下土豆的行情!
有什么python相关报错解答自己不会的、或者源码资料/模块安装/女装大佬精通技巧 都可以来这里:(https://jq.qq.com/?_wv=1027&k=2Q3YTfym)或者+V:python10010问我
先来上效果
用Python实现简单爬取数据可以使用Pandas模块,
前提是表格网页数据(即含有表格标签< table>…< /table>),
右键单击网页中的表格,
在弹出的菜单中选择“检查元素”,
查看代码中是否含有表格标签
…如图所示
检查元素
确定后在程序中使用Pandas模块的read_html()方法即可轻松实现简单爬虫。
完整程序代码如下:
importpandas as pd
import matplotlib.pyplot as plt
# 创建空的DataFrame对象
df =pd.DataFrame()
# 创建空列表
url_list=[]
# 遍历网页的所有页
for i in range(1, 19):
url = 'http://www.xinfadi.com.cn/marketanalysis/0/list/'+str(i)+'.shtml?prodname=%E5%9C%9F%E8%B1%86&begintime=2020-01-01&endtime=2020-09-27'
url_list.append(url)
# 遍历网页中的table读取网页表格数据
for url in url_list:
df= df.append(pd.read_html(url))
# 数据清洗删除无用数据第0行和第8列
df.drop(index=0,inplace=True)
df.drop(columns=7,inplace=True)
df.columns=['品名','最低价','平均价','最高价','规格','单位','发布日期']
# 导出Excel数据
df.to_excel('土豆.xlsx',index=False)
# 将平均价转换为浮点类型
df['平均价'] = df['平均价'].astype(float)
df['发布日期']=pd.to_datetime(df['发布日期'])
df1=df.set_index('发布日期')
df_month=df1.resample('M').mean()
# 绘制图表
plt.rcParams['font.sans-serif'] = ['SimHei']
df_month.plot(kind='line',marker='o',color='r',title='土豆价格变化趋势')
plt.show()