☀️从0到1部署Hadoop☀️基于网站日志进行大数据分析【❤️建议收藏❤️】

news/2024/5/10 1:10:52/文章来源:https://wxw-123.blog.csdn.net/article/details/118674706

目录

基于Hadoop部署实践对网站日志分析

1.项目概述

2.安装及部署

2.1 VMware安装

2.2 Ubuntu安装

 2.3 Java环境安装

2.4 Hadoop安装

2.5 MySQL安装

 2.5 hive安装

 2.6 sqoop安装

2.7 hbase安装

3.数据预处理

3.1 使用MapReduce编写程序

3.2 数据及环境准备

3.3 MapReduce执行

4.数据导入hive

4.2按日期创建分区

5.数据分析

5.1 PV量

5.2注册用户数

5.3 独立IP数

5.4 跳出用户数

6.导入MySQL

6.1创建mysql表

6.2 将hive结果文件导入mysql

7.附加操作—增添色彩

7.1 本地Navicat连接

7.2 数据可视化(项目色彩一)

7.3 将数据导入到hbase(项目色彩二)

每文一语


基于Hadoop部署实践对网站日志分析

1.项目概述

本次要实践的数据日志来源于国内某技术学习论坛,该论坛由某培训机构主办,汇聚了众多技术学习者,每天都有人发帖、回帖。至此,我们通过Python网络爬虫手段进行数据抓取,将我们网站数据(2013-05-30,2013-05-31)保存为两个日志文件,由于文件大小超出我们一般的分析工具处理的范围,故借助Hadoop来完成本次的实践。利用hdfs将我们的数据上传到分布式文件系统,最后利用MapReduce进行数据清洗,然后导入到hive进行数据分析统计,最后利用sqoop导出到MySQL,然后进行数据可视化展示。

2.安装及部署

首先我们获取到Hadoop部署所需的各类安装包及镜像文件,包含VMware15.5,Ubuntu18.04.5,Hadoop,hive,sqoop,MySQL,hdfs,如下

图表 1 Hadoop插件详情

2.1 VMware安装

本次实验我们安装的是VMware15.5版本的,它是我们虚拟环境的一个基础,像Linux、Ubuntu这些虚拟环境都是在此基础上搭建的,安装过程这里就不详细的展出了,最终的安装结果如下。

2.2 Ubuntu安装

       首先安装一个Ubuntu系统,用于我们所有的环境搭建,在此基础上我们可以搭建我们的Hadoop集群,还可以在这里面进行我们Windows系统可以进行的操作,例如上网、办公等,Ubuntu安装最终结果如下。

 2.3 Java环境安装

2.4 Hadoop安装

 

图表 5 Hadoop环境变量添加

首先开启Hadoop集群:start-all.sh:开启所有的Hadoop所有进程,在主节点上进行

各节点的参数解释如下:

①NameNode它是Hadoop 中的主服务器,管理文件系统名称空间和对集群中存储的文件的访问。

②Secondary  NameNode是一个用来监控HDFS状态的辅助后台程序。

③DataNode它负责管理连接到节点的存储(一个集群中可以有多个节点)。每个存储数据的节点运行一个 datanode 守护进程。

④NodeManager:

1、是YARN中每个节点上的代理,它管理Hadoop集群中单个计算节点

2、包括与ResourceManger保持通信,监督Container的生命周期管理,

3、监控每个Container的资源使用(内存、CPU等)情况,追踪节点健

4、康状况,管理日志和不同应用程序用到的附属服务(auxiliary service)

⑤ResourceManager:在YARN中,ResourceManager负责集群中所有资源的统一管理和分配,它接收来自各个节点(NodeManager)的资源汇报信息,并把这些信息按照一定的策略分配给各个应用程序(实际上是ApplicationManager)RM与每个节点的NodeManagers (NMs)和每个应用的ApplicationMasters (AMs)一起工作。

2.5 MySQL安装

   首先,在进行MySQL安装的时候,我们需要保证我们的虚拟机处于连接网络的状态。执行该命令对MySQL服务安装:sudo apt-get install mysql-server

 2.5 hive安装

Show databases;展示数据库的名称

Show tables;展示所有表

Create table 表名(字段 字段类型……) 创建表结构

 2.6 sqoop安装

2.7 hbase安装

虽然本次实验项目用不到hbase,但是我的附加项目里面,包含了hbase的相关操作,这里也给出安装结果截图

至此我们的所有插件及环境都已经安装部署完毕了,接下来就是我们的项目实践。这里并没有给出安装的每一步,但是在我的博客里面已经给出了详细的安装步骤了,文章链接如下(可点击)

https://blog.csdn.net/weixin_47723732/article/details/118095004

 

3.数据预处理

通过一些技术手段,对我们所获取到底层数据进行数据转换和数据清洗,最终统一我们的数据格式,让我们的数据变得更加便于我们数据分析和展示。本次的实验数据,是网站的日志数据,其中每行记录有5部分组成:访问者IP、访问时间、访问资源、访问状态(HTTP状态码)、本次访问流量。需要我们利用Hadoop的MapReduce对我们的数据进行清洗,最终转换为我们所需要的干净数据,最终只需要三种字段:访问IP、访问时间、访问资源,其中需要让它们按照逗号进行分割,数据格式及内容需要规整。

 

图表 11 原数据内容展示

图表 12 预处理内容展示

3.1 使用MapReduce编写程序

   使用python开发的mapper reducer进行数据处理。这一步需要两个Python文件两个执行文件,两个日志文件,Python文件用于对我们的源数据进行处理和清洗,执行文件包含了输入输出,这样可以加强我们实验的编程性。

Hadoop Streaming是Hadoop提供的一种编程工具,允许用户用任何可执行程序和脚本作为mapper和reducer来完成Map/Reduce任务,这意味着你如果只是hadoop的一个轻度使用者,你完全可以用Hadoop Streaming+Python/Ruby/Go 等任何你熟悉的语言来完成你的大数据探索需求,又不需要写上很多代码。

 

3.2 数据及环境准备

  3.2.1 源数据文件准备

   - 下载日志文件

   - 将文件拷贝到hadoopvm虚拟机

图表 14 数据源展示

记住虚拟机上本地路径如:/home/hadoop/logfiles/

sudo find / -name hadoop-stream*(找到Hadoop文件路径)

 

图表 15 Hadoop jar包路径

将Python脚本里面的参数和路径替换,刚刚找到的替换第一行

 

在hdfs里面新建我们的文件夹:logfiles,然后把我们的日志文件放入里面

   - 将文件使用hdfs命令上传到HDFS

先创建hdfs路径:

参数解释:创建文件时候mkdir -p (创建多级目录,父目录存在不报错,依旧在此目录创建没有的子目录)

hdfs dfs -mkdir -p /user/hadoop/logfiles

再上传文件到hdfs

参数解释:

put命令把本地的文件上传到hdfs里面

命令为put 本地路径 hdfs路径

ls -R 递归显示该目录下的所有文件夹(文件)属性和信息

hdfs dfs -put access_2013_05_30.log /user/hadoop/logfiles

hdfs dfs -put access_2013_05_31.log /user/hadoop/logfiles

hdfs dfs -ls -R /user/hadoop/logfiles

 

使用python开发mapreduce脚本对日志数据进行清理,目的是将平面的文本数据解析关键字段成结构化数据,以便存入结构化数据库hive进行分析。

3.3 MapReduce执行

   - mapper程序

  拷贝到hadoopvm虚拟机,记住路径如:/home/hadoop/logfiles/format_mapper.py

   - reduce程序

  拷贝到hadoopvm虚拟机,记住路径如:/home/hadoop/logfiles/format_reducer.py

   - 使用hadoop-streaming运行mapper reducer程序,示例:

   - 修改python程序文件的执行权限:

参数解释:

cd 切换到该路径下,cd ~ :切换到家目录,cd .. 切换到上一级的目录

Chmod 给我们的文件加入权限;数字为777 代表可读可写可执行

详解:

r (read)      ---------------->   4

w (write)    ---------------->   2

x (excute)    ---------------->   1

或者

u

user 表示该文件的所有者

g

group 表示与该文件的所有者属于同一组( group )者,即用户组

o

other 表示其它用户组

a

all 表示这三者皆是

chmod u+rwx, g+rwx, o+rwx filename 改命令说明对filename文件, 赋予user、group、other均有read、write、excute的权限

cd /home/hadoop/logfiles/

chmod 777 format_mapper.py

chmod 777 format_reducer.py

chmod 777 format_run_2013-05-30.sh

chmod 777 format_run_2013-05-31.sh

   -执行脚本文件:

cd /home/hadoop/logfiles/

source format_run_2013_o5_30.sh

source format_run_2013_o5_31.sh

执行我们的脚本文件,可以用source或者./

 

-查看数据清洗的文件

hdfs dfs -ls -R /user/hadoop

 

- 结果文件(查看)

参数解释

cat 查看文件里面的内容,这个是全部查看,还有其他的查看命令:cat主要有三大功能:
1.一次显示整个文件。
cat   filename
2.从键盘创建一个文件。
cat  >  filename
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
cat   file1   file2  > file

Hdfs dfs -cat /user/Hadoop/files30/part-00000

4.数据导入hive

创建hive数据库,将处理的数据导入hive数据库

4.1 根据结果文件结构建立hive数据库表

   3.4.1在结果文件上创建分区表

   - 表名 (techbbs)

   - 表类型 (External)

   - 表字段

    字段名    字段类型    描述

    ip           string    访客IP地址

    atime     string    访问时间

    url          string    访问页面

   - 表分区字段 (logdate string)

   - 表分隔符 (TERMINATED BY ‘,’)

   - 表路径 (LOCATION /xxx/xxx)

首先把清洗后的文件放在我们自己设定的文件夹里面

参数解释

MV 移动或者剪切 使用格式:MV 源文件 目标路径最后也可以对其进行重命名,如果不加/那么就是重命名,加了就是把其粘贴在该路径下面

hdfs dfs -mkdir -p /user/hadoop/data/datashdfs dfs -mkdir -p /user/hadoop/data/datas1hdfs dfs -mv /user/hadoop/files30/part-00000 /user/hadoop/data/datas/30hdfs dfs -mv /user/hadoop/files31/part-00000 /user/hadoop/datas/datas1/31hdfs dfs -ls -R /user/hadoop/data

 在hive里面进行创建表格,这里创建一个分区表,create external table 表名(字段 字段类型……)partitioned by (分区字段 字段类型) rowformat delimted fields terminated by ‘分割符’,location 数据路径的祖文件夹(不包含数据的直接存储文件夹)

建表语句:

CREATE EXTERNAL TABLE wxw(ip string, atime string, url string) PARTITIONED BY (logdate string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/hadoop/data';

截图:

 

4.2按日期创建分区

建立分区语句

语法解释:

Alter table 表名 add partition(分区字段=‘分区标签’)location 数据路径(数据文件的父文件夹)

 ALTER TABLE wxw ADD PARTITION(logdate='2013_05_31') LOCATION '/user/hadoop/data/datas1'; 

 

 ALTER TABLE wxw ADD PARTITION(logdate='2013_05_31') LOCATION '/user/hadoop/data/datas1'; 

 

 

 

数据导入成功! 

5.数据分析

使用Hive对结果表进行数据分析统计

5.1 PV

创建一个表使用create,这里我们把查询出来的数据,直接创建一个视图,select count(1) 统计数量,这里的语法意思就是,统计日期为2013-05-30(2013-05-31)的日志记录数量,也就是PV(浏览量)

语句:

CREATE TABLE wxw_pv_2013_05_31 AS SELECT COUNT(1) AS PV FROM wxw WHERE logdate='2013_05_31';

语句:

CREATE TABLE wxw_pv_2013_05_31 AS SELECT COUNT(1) AS PV FROM wxw WHERE logdate='2013_05_31';

5.2注册用户数

这里使用一个hive里面的函数:instr(源字符串,匹配字符串),通过给定一个字符串,然后利用匹配字符串的整体,返回匹配字符串的第一个字符在源字符串的索引位置。所以该语句就是有两个条件,分别是日期和个函数所匹配到的结果,如果有这个网址那么就是返回一个索引(大于0的)

语句:

CREATE TABLE wxw_reguser_2013_05_30 AS SELECT COUNT(1) AS REGUSER FROM wxw WHERE logdate = '2013_05_30' AND INSTR(url,'member.php?mod=register')>0;

语句:

CREATE TABLE wxw_reguser_2013_05_31 AS SELECT COUNT(1) AS REGUSER FROM wxw WHERE logdate = '2013_05_31' AND INSTR(url,'member.php?mod=register')>0;

5.3 独立IP数

独立IP数,这里直接对我们的IP字段进行去重处理,这样就可以显示IP的独立数量了

语句:

CREATE TABLE wxw_ip_2013_05_30 AS SELECT COUNT(DISTINCT ip) AS IP FROM wxw WHERE logdate='2013_05_30';

语句:

CREATE TABLE wxw_ip_2013_05_31 AS SELECT COUNT(DISTINCT ip) AS IP FROM wxw WHERE logdate='2013_05_31';

5.4 跳出用户数

跳出用户数:只浏览了一个页面便离开了网站的访问次数,即只浏览了一个页面便不再访问的访问次数。这里,我们可以通过用户的IP进行分组,如果分组后的记录数只有一条,那么即为跳出用户。将这些用户的数量相加,就得出了跳出用户数。

先对IP进行分组,然后使用having进行过滤 过滤这个分组里面只有一条记录的条数,最后进行计数,就得到了我们的跳出用户数量

语句:

create table wxw_jumper_2013_05_30 as select count(1) as jumper from (select count(ip) as times from wxw where logdate='2013_05_30' group by ip having times=1) e;

语句:

create table wxw_jumper_2013_05_31 as select count(1) as jumper from (select count(ip) as times from wxw where logdate='2013_05_31' group by ip having times=1) e;

将所有的查询放在一张表里:

set hive.mapred.mode=nonstrict;(解决多表连接的问题)

语法解释:

内连接表示查询两个表的交集,而且ON的条件为 1=1 就表示连接条件永远成立,这里使用将所有的查询结果汇总到一张数据表里面

语句:

create table wxw_2013_05_30 as select '2013_05_30',a.pv,b.reguser,c.ip,d.jumper from wxw_pv_2013_05_30 a join wxw_reguser_2013_05_30 b on 1=1 join wxw_ip_2013_05_30 c on 1=1 join wxw_jumper_2013_05_30 d on 1=1;select * from wxw_2013_05_30;

语句:

create table wxw_2013_05_31 as select '2013_05_31',a.pv,b.reguser,c.ip,d.jumper from wxw_pv_2013_05_31 a join wxw_reguser_2013_05_31 b on 1=1 join wxw_ip_2013_05_31 c on 1=1 join wxw_jumper_2013_05_31 d on 1=1;select * from wxw_2013_05-31;

6.导入MySQL

使用Sqoop将hive分析结果表导入mysql

6.1创建mysql表

mysql -u root -p(启动MySQL,需要输入密码,不显示)create database wxw;(创建数据库)

创建一个表格

create table wxw_logs_stat(logdate varchar(10) primary key,pv int,reguser int,ip int,jumper int);

6.2 将hive结果文件导入mysql

查看hive存放的表位置

show create table wxw_2013_05_30;

语法解释:

使用sqoop将我们的hive里面的结果表导入到我们的MySQL里面,使用sqoop export –connect jdbc:mysql://localhost:3306/数据库 –username root -p –table MySQL里面的表名 –export-dir hive里面结果表的存储位置 -m 1 –input -fields-terminated -by ‘\001’

语句:

sqoop export --connect jdbc:mysql://localhost:3306/wxw --username root -P --table wxw_logs_stat --export-dir  /opt/hadoop/hive/warehouse/data.db/wxw_2013_05_30  -m 1 --input-fields-terminated-by '\001'

语句:

sqoop export --connect jdbc:mysql://localhost:3306/wxw --username root -P --table wxw_logs_stat --export-dir  /opt/hadoop/hive/warehouse/data.db/wxw_2013_05_31  -m 1 --input-fields-terminated-by '\001'

查看MySQL是否导入成功

select * from wxw_logs_stat;

7.附加操作—增添色彩

7.1 本地Navicat连接

(我们用虚拟机里面的IP来连接我们的本地Navicat,这样有助于我们数据分析可视化!)

7.2 数据可视化(项目色彩一)

数据可视化可以直观的把我们的数据展现出来,作为领导者决策的重要参考意见

我采用pycharmpymysql对虚拟机里面的MySQL进行远程连接,通过编程对数据可视化一键展示,不需要我们手动的添加数据,直接可以保存变量数据

简单的数据分析:很明显我们可以通过可视化的效果得知,2013-05-31的浏览量、注册用户、独立IP数这些正向指标都比较的好,都是高于2013-05-30的效果,所以我们可以在这一天对网站加大维护和投入相应的广告来盈利。

可视化代码如下:

from pyecharts.globals import ThemeType
from pyecharts import options as opts
from pyecharts.charts import Bar
import pymysql
conn = pymysql.connect(host='192.168.190.135',user='root',password='2211',database='wxw',port=3306,charset='utf8'
)
cur = conn.cursor()
sql = 'select logdate as `日期`,pv as `浏览量`,reguser as `注册用户数`,ip as `独立IP数量`,jumper as `跳出用户数` from `wxw_logs_stat`;'
cur.execute(sql)
data = cur.fetchall()
print(data)
x_1=list(data[0][1:])
x_2=list(data[1][1:])
print(x_1)
print(x_2)
a=[]
for x in data:a.append(x[0])
a_1=a[0]
a_2=a[1]
print(a_1)
print(a_2)
conn.close()data_0=['浏览量', '注册用户', '独立IP数', '跳出用户数']
c = (Bar({"theme": ThemeType.MACARONS}).add_xaxis(data_0).add_yaxis(a_1, x_1)    #gap="0%"   这个可设置柱状图之间的距离.add_yaxis(a_2, x_2)    #gap="0%"   这个可设置柱状图之间的距离.set_global_opts(title_opts={"text": "某网站日志数据分析", "subtext": "柱状图"},     #该标题的颜色跟随主题# 该标题默认为黑体显示,一般作为显示常态# title_opts=opts.TitleOpts(title="标题")xaxis_opts=opts.AxisOpts(name='类别',name_location='middle',name_gap=30,  # 标签与轴线之间的距离,默认为20,最好不要设置20name_textstyle_opts=opts.TextStyleOpts(font_family='Times New Roman',font_size=16  # 标签字体大小)),yaxis_opts=opts.AxisOpts(name='数量',name_location='middle',name_gap=60,name_textstyle_opts=opts.TextStyleOpts(font_family='Times New Roman',font_size=16# font_weight='bolder',)),# datazoom_opts=opts.DataZoomOpts(type_="inside"),  #鼠标可以滑动控制# toolbox_opts=opts.ToolboxOpts()  # 工具选项# brush_opts=opts.BrushOpts()       #可以保存选择).render("简单柱状图.html")
)
print("图表已生成!请查收!")

7.3 将数据导入到hbase(项目色彩二)

创建数据表和列族:create 'wxw','data'

插入数据:

Put 'wxw','1','data:londate,pv,reguser,jumper','2013-05-30,69857,28,10411,3749'put 'wxw','2','data:londate,pv,reguser,jumper','2013-05-31,502404,523,24635,8454'

参数说明:添加数据:put ‘表名称’,’行键’,’列族:列名1,列名2……’,‘数据1,数据2……’在这里我们就可以理解为是一个二维表,也就是Excel类似的,一行一列确定一个单元格

扫描整个列族:scan ‘表名称’, {COLUMN=>‘列族’}

Scan ‘wxw’,{ COLUMN =>’data’}

每文一语

☀️努力 上进 自律 才是这个年龄该做的事☀️

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_716722.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

把网站从 http 转换成 https

基础准备: 一台服务器,一个主域名或多级域名,本次申请的免费 本次环境使用 centos6.5 nginx1.8 jdk1.8 tomcat8 如果需要收费的请参考: 云盾证书服务(包年)-购买-阿里云 SSL证书 - 腾讯云 一. 申请免费 HTTPS 证书 1. 输入网址 https://fr…

基于Hadoop部署实践对网站日志分析(大数据分析案例)

目录 1、项目概述 2、总体设计 2.1 Hadoop插件安装及部署 3、详细实现步骤操作纪要 3.1 hadoop环境准备 3.2 源数据文件准备 3.3 python开发mapreduce脚本 3.4 根据结果文件结构建立hive数据库表 3.4.1在结果文件上创建分区表 3.4.2 按日期创建分区 3.5 使用Hive对结果…

写论文工具:LaTex在线网站

I. http://Overleaf.com (http://ShareLaTeX.com) http://Lucidchart.com (http://Gliffy.com) http://Mendeley.com 用这一套网站,可以随时随地画图写论文,云端 LaTeX 环境 云端 visio 替代品 云端参考文献管理。 Overleaf …

Winform下动态执行JavaScript脚本获取运行结果,谈谈网站的自动登录及资料获取操作...

为了有效阻止恶意用户的攻击,一般登录都会采用验证码方式方式处理登录,类似QQ的很多产品的验证码处理,但在一些OA系统中,系统通过非对称加密方式来处理登录的密码信息,登录页面每次提供对密码进行加密的公钥是不同的&a…

基于Lucene框架的“虎扑篮球”网站搜索引擎(java版)

1 引言 本次作业完成了基于Lucene的“虎扑篮球”网站搜索引擎,对其主要三个板块---“最新新闻”(主要NBA新闻),“虎扑步行街”(类似贴吧性质),“虎扑湿乎乎”(篮球发帖区&#xff0…

关系抽取-常见问题-Overlap:SEO(SingleEntity, 一实体与多个实体有关系)、EPO(EntityPair,同一对实体有多种关系)、HTO(HeadTail,头尾实体有嵌套/重叠)

SEO(SingleEntityOverlap, 一个实体与多个实体有关系)、 EPO(EntityPairOverlap,同一对实体有多种关系)、 HTO(HeadTailOverlap,头尾实体有嵌套/重叠) 参考资料: 关系抽…

网站统计 开源 java_开源 java CMS - FreeCMS2.8 统计分析

统计分析系统级统计分析,用于统计系统所有数据。工作量统计统计所有用户的工作量。从左侧管理菜单点击工作量统计进入。您可以根据添加人,时间条件进行筛选。并可导出结果为excel文件。站点信息统计统计所有站点的信息量。从左侧管理菜单点击站点信息统计…

sensor曝光量和曝光行的区别_企业SEO,如何利用行业关键词,提高产品曝光量?...

每一个企业,基于网络营销而言,对方都期望,自身的产品能够借助相关营销工具,获得不错的产品曝光量。特别是百度SEO,如果前期你的准备工作不足,你基于搜索所获得的曝光量,总是杯水车薪的。那么&am…

用HTML+CSS编写一个计科院网站首页的静态网页

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>计算机科学学院</title><link href"css/bgcss.css" rel"stylesheet"> </head> <body><!--顶部图片部…

社交网站部署——SVN服务器搭建并发布上线

案例概述 某公司的社交网站采用PHP语言开发&#xff0c;为了管理PHP程序员开发的代码&#xff0c;上级领导要求搭建SVN服务器进行版本控制。社交网站的第一个版本部署在LNMP平台之上&#xff0c;前端为Nginx服务器&#xff0c;通过fastcgi协议访问后端的PHP服务器。为了保证数据…

鸿蒙os开发网站,华为鸿蒙系统最新消息,HarmonyOS 应用开发在线体验网站上线

原标题&#xff1a;华为鸿蒙系统最新消息&#xff0c;HarmonyOS 应用开发在线体验网站上线华为的鸿蒙系统从开发之初就受到了大家的广泛关注&#xff0c;从一开始的“备胎”到现在最新的HarmonyOS 2.0版本&#xff0c;华为鸿蒙系统在成长过程中也是经历了不少的波折。今天&…

如何屏蔽https网站,禁止https网站的访问?

HTTPS&#xff08;HTTP over SSL&#xff09;由于其通讯协议的特殊性&#xff0c;域名信息和访问的URL等都处于SSL加密保护下&#xff1b;所以大部分的路由器系统都无法对https网站的域名进行过滤和屏蔽。而诸如WFilter这样的专业级上网行为管理产品&#xff0c;则可以对流量进…

vue项目的seo

2019独角兽企业重金招聘Python工程师标准>>> 不可否定的是&#xff0c;vue现在火。但是在实际项目中&#xff0c;特别是像一下交互网站&#xff0c;我们不可避免会考虑到的是seo问题&#xff0c;这直接关系到我们网站的排名&#xff0c;很多人说用vue搭建的网站不能…

屏蔽复制网站内容时弹出的提示

例如chrome浏览器&#xff0c;在设置里把JavaScript关掉就行了 url地址栏输入chrome://settings/content/javascript?searchjavascript

网站设计HTML——百度 滚筒洗衣机

滚筒洗衣机的效果 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>滚筒洗衣机销售排行榜</title> </head> <body> <div><h1>滚筒洗衣机销售排行榜</h1><div&g…

linux救援模式使用yum,centos如何进救援模式_网站服务器运行维护,centos

如何解决CentOS7系统ifconfig无法使用的情况_网站服务器运行维护CentOS7系统ifconfig无法使用的解决方法&#xff1a;首先查看“ifconfig”命令所需要的安装包&#xff1b;然后使用“#yum -y install net-tools”命令安装软件&#xff1b;最后使用“ifconfig”查看IP信息即可。…

如何删除ppt自带背景音乐_把网站搬进PPT里是种怎样的体验?

本文总计&#xff1a;2477 字预计阅读时间&#xff1a;10 分钟昨天&#xff0c;我给大家推荐了一个酒类产品的官网&#xff0c;不知道大家看过没。要是没看过的话&#xff0c;也没有关系&#xff0c;因为我用 PPT 把这个网站仿制了一下。保留了主要元素&#xff0c;以及大部分的…

mysql网站中文乱码,关于MySQL中文乱码的完美解决方案

当用客户端或用其他方式连接数据键入中文数据后&#xff0c;在client中的显示为乱码&#xff0c;当然这是字符集设置出现了问题。我先后尝试了很多办法&#xff0c;但依然还是无法在client中显示中文&#xff0c;我尝试在my.ini中修改一下数据在[client]中加入。# Here follows…

php asp.net mvc jsp,IIS部署asp.net mvc网站的方法

iis配置简单的ASP.NET MVC网站&#xff0c;供大家参考&#xff0c;具体内容如下编译器&#xff1a;VS 2013本地IIS&#xff1a;IIS 7操作系统&#xff1a;win 7MVC版本&#xff1a;ASP.NET MVC4sql server版本: 2008 r2打开VS 2013&#xff0c;新建一个MVC项目(Internet版的),然…

特殊日期将网站变成灰色-css滤镜(整理)

一、网站变灰 <!DOCTYPE html> <html> <head> <style> img {-webkit-filter: grayscale(100%);-moz-filter: grayscale(100%);-ms-filter: grayscale(100%);-o-filter: grayscale(100%);filter: grayscale(100%);filter: progid:DXImageTransform.Micr…