当前位置: 首页 > news >正文

西安个人建网站知乎推广

西安个人建网站,知乎推广,做门户类网站报价,织梦源码怎样做单页网站刚学python爬虫的时候写了一段下载妹子图片的代码,前两天把他翻出来爬了一堆图片,现在给大家分享一下我的“使用姿势”。 爬的网站是这里 这个网站很有规律,非常适合新手学习、练手。 我在爬图片的时候不仅下载了图片,顺便收…

刚学python爬虫的时候写了一段下载妹子图片的代码,前两天把他翻出来爬了一堆图片,现在给大家分享一下我的“使用姿势”。
这里写图片描述
爬的网站是这里
这个网站很有规律,非常适合新手学习、练手。
我在爬图片的时候不仅下载了图片,顺便收割了套图的名字,人气(我理解的是访问量),喜欢(实验证明,点一下就会+1,所以我称它为点赞量),发表时间,编号;将这些内容存在数据库中,由于数据量很小,只有1000行左右,所以用个sqlite就行了,没必要用MySQL,当然写成csv,txt也是可以的。
至于怎么爬取,这不是本文的重点,本文的重点是利用python的pandas进行数据分析。
获得以上信息之后,我用jieba做了个分词,储存在数据库中,可以使用SQL语句中的alter命令在原来的表结构中新增一列。分完词之后就可以进行一波操作了。我分别用Excel和python操作了一番。
不写

Excel部分


虽然Excel处于鄙视链的倒数,但是我不怕被鄙视。
这是初始数据
这是初始数据,查看没有缺失值。解释一下标题吧:
id:索引
name:套图的名字
NOs:套图的编号
numbers:一套图中图片的数量
url:套图地址
year:发表与那一年
date:发表时间
poputarity:人气(访问量)
like:喜欢(点赞量)
words:分好的词
我们先把没用的数据隐藏(最好不要删,万一有用呢?),保留year,numbers,date,popularity,like和words就可以了,但是words成这样我们没法操作,需要对它进行分列。这是分好的数据:
这里写图片描述
先做个数据透视表,计个数,然后就可以根据需要实现数据可视化,关于数据透视表的操作百度经验一搜一大堆,我就不说了,直接上成果吧!
这里写图片描述
由上图可知,15,16,17年发图的套数和数量,虽然15年的套数比16年多了100多,但总数量并没有多多少,平均每套图的数量也在逐年上升。下面来看详细情况:
这里写图片描述
我们发现2015年套图数量多,是因为第一,第二季度发的比较多。具体是哪个月我就懒得用excel弄了,还是用python方便一些。下面是每套图中图片数量的箱线图(Excel2016可以直接画箱线图,老一点版本的也可以画出来就是比较麻烦):
这里写图片描述
均值和中位数大致重合,说明数据没有明显的偏态,16年明显比15年上升了一个台阶,16年只有一个离群值点,17年3个,15年5个。
上面这些都是用户关心的,网站运营者主要关心的是流量(虽然我不知道该网站是如何盈利的)。
这里写图片描述
可以看出,不管是点赞数还是访问量,15年的都非常小,16年和17年的都明显右偏(15年的太小,看不出来),尤其是17年的点赞量(均值比上四分位数都大,简直不可描述),这是由于17年有几个异常大的离群值,只是被我隐藏了。
此外我还用Excel做了个词频统计:
这里写图片描述
‘写真’与’性感’突破200,荣获状元和榜眼,探花被’妹子’摘下,’美女’仅比’妹子’少了12票,屈居第四。词频在100次以上的有七个。

python部分


还是python用起来得心应手,直接用pandas搞一搞就出来了。
直接上代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import sqlite3
from datetime import datetimeSQL="select * from pictures as p join names on p.id=names.id" 
#我当时存到了两个table里面,所以读的时候还要关联,也可以先读取,再用pandas的函数关联
conn=sqlite3.connect(r'G:\mqiqi\meizitu.db')
df=pd.read_sql(SQL,conn) #直接用pandas的函数将数据库中的数据写入数据框
df.info() #查看数据框的信息

这里写图片描述
可以将没用的数据用del删掉(我没删),有些数据需要转化类型,像NOs要变成字符串,不然我们调用describe方法的时候也会对它操作,year和date要由字符串变成时间格式,方便我们后续操作,另外新增一个month列,对月份进行描述统计还是比较合理的。相关代码如下:

del df['id']
df['date']=pd.to_datetime(df.date,format="%Y-%m-%d") 
#Y匹配的是四位年:2017,y匹配二位年:17
df['month']=df.date.values.astype('datetime64[M]')
df.NOs=df.NOs.values.astype('str')
df.year=pd.to_datetime(df.year,format="%Y")
df.info()

再次查看信息,发现已经变了:
这里写图片描述
输入’df.describe()’,查看一下描述统计:
这里写图片描述
这些东西在Excel中也能计算,但一想到python中只要一行代码,我就懒了。我们看一下点赞量的最大值是上四分位数的45倍左右,导致均值被拉的虚高,简直丧心病狂,实际操作中可以去掉异常值,但我不想这么做。
直接看看走势吧。

import matplotlib.lines as mlines
plt.rcParams['font.sans-serif'] = ['SimHei'] #中文字体,不然中文会显示成口
plt.figure() 
x1=df.groupby('month').popularity.sum()
x2=df.groupby('month').like.sum()
p1=x1.plot(color='b',label=u'每月总访问量')
p2=x2.plot(secondary_y=True,style='--',color='r',label=u'每月总点赞量') #设置次坐标轴
blue_line = mlines.Line2D([],[],linestyle='-',color='blue',markersize=2, label=u'每月总访问量')
red_line= mlines.Line2D([],[],linestyle='--',color='red',markersize=2, label=u'每月总点赞量')
plt.legend(handles=[blue_line,red_line],loc='upper left')
plt.grid(True)
plt.show()

得到下图:
这里写图片描述
大写的PS:这些指标都是虚荣指标,除了放出来给浏览的客户看看,没什么卵用,真正有用的指标不会给我们看到的
大体上是波动上升,其中在15年2、3、4月网站的总访问量明显较高,16年8、9月也显著增加,17年1月的点赞量异常高,应该就是那几个丧心病狂的造成的。
接下来将访问量和点赞量平均到每套图上看看:

df['rate']=df.like/df.popularity*10000*100
plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.figure() 
x1=df.groupby('month').popularity.sum()/(df.groupby('month').count().popularity)
x2=df.groupby('month').like.sum()/(df.groupby('month').count().like)
x3=df.groupby('month').rate.sum()/(df.groupby('month').count().rate)
p1=x1.plot(color='b',label=u'每月平均访问量')
p2=x2.plot(secondary_y=True,style='--',color='r',label=u'每月平均点赞量')
p3=x3.plot(secondary_y=True,style='--',color='g',label=u'每月平均点赞率')
blue_line = mlines.Line2D([],[],linestyle='-',color='blue',markersize=2, label=u'每月平均访问量')
red_line= mlines.Line2D([],[],linestyle='--',color='red',markersize=2, label=u'每月平均点赞量')
green_line=mlines.Line2D([],[],linestyle='--',color='green',markersize=2, label=u'每月平均点赞量')
plt.legend(handles=[blue_line,red_line,green_line],loc='upper left')
plt.grid(True)
plt.show()

这里添加一个新的变量rate,代表点赞率,它的数量级是万分之一,为了能和坐标轴匹配,我将它扩大了1百万倍(为什么大家看完不点赞呢?)
这里写图片描述
可以看出,15年2,3,4月平均每套图访问量并没有升高,主要原因是多发了几套图。如果我们假定一个用户对一套图只进行一次浏览,我们可以认为网站的活跃用户在此期间并没有明显的增加。至于转现率,用户留存率之类的,我搞不到数据。
点赞率也在缓缓上升,这能不能算作网民素质提高的一种表现呢?
最后放一张箱线图:
这里写图片描述
可以看出来,比Excel的好看多了,为了图形的美观,我把离群值都忽略了,右上角的是点赞率的图,只有万分之几,这究竟是道德的沦丧还是人性的悲哀。单纯从网站访问量和点赞量来看,该网站的运营情况挺好的。
我也用python做了词频图和一些条形图,和Excel的没啥差别,就不贴出来了。
说了这么多,总得给大家几张福利图片冲击一下视觉吧。
这里写图片描述
怎么样,够刺激吧!!!


第一次发文,各位大佬多多指教。

http://www.hrbkazy.com/news/7823.html

相关文章:

  • 菏泽市建设银行网站制作一个网站需要多少费用
  • 可以自己做logo的网站seo优化是什么意思
  • 菏泽做网站电话舆情服务公司
  • 网站开发 书籍天津关键词排名提升
  • 东莞建英文网站的公司百度经验手机版官网
  • 漂流瓶说自己是做网站的营销型网站建设策划书
  • wordpress高速优化网站seo策划方案实例
  • 网站信息真实性核验单推广吧
  • 南通住房和城乡建设局网站媒体发布平台
  • 网站建设未完成百度不收录网站
  • 如何开始做婚恋网站最专业的seo公司
  • 河北雄安新区规划建设局网站网站优化人员通常会将目标关键词放在网站首页中的
  • 网站优惠券怎么做的营销策略手段有哪些
  • 徐州网站推广网络营销专业代码
  • 商业网站建立上海今天刚刚发生的新闻
  • 博兴做网站一般网站推广要多少钱
  • 做网站需要注册什么公司网络营销外包收费
  • python代码网站教育培训报名
  • 汾湖做网站网络营销的表现形式有哪些
  • 做网站有哪些类型seo营销优化软件
  • 玉环做网站有哪些广告推广怎么找客户
  • 做镜像网站chrome手机版
  • 有哪些中文域名网站网络优化公司
  • 做网站报价公司关键词排名怎么做好
  • 如何做像京东淘宝那样的网站广州网站建设
  • 如果域名网站用来做违法关键词整站优化公司
  • 怎么样可以设计网站杭州关键词排名系统
  • 西安网站自然排名优化昆明seo培训
  • win10做的网站其他电脑访问不了百度网盘搜索引擎官方入口
  • 搜索推广网站哪家做的最好win10优化大师