You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

309 lines
6.4 KiB

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

`毕业设计`:微博用户情感分析系统技术文档说明
## 1、本系统开发环境搭建如下
### 1、开发环境说明
① 预先使用安装好python3.6.3|Aanconda版
② 预先装好vue2.5.2版
③ 安装virtualenv虚拟环境
```python
pip install virtualenv
```
④ 安装virtualenvrapper方便进入虚拟环境因为直接用virtualenv进入太麻烦了
```python
pip install virtualenvrapper-win
```
⑤ 接着安装虚拟环境:
```python
mkvirtualenv weibo-analysis-system
```
> 这里解释一下virtualenvrapper的命令
> 创建基本环境mkvirtualenv [环境名]
> 删除环境rmvirtualenv [环境名]
> 激活环境workon [环境名]
> 退出环境deactivate
> 列出所有环境workon 或者 lsvirtualenv -b
⑥ 进入python虚拟环境
```python
workon weibo-analysis-system
```
⑦ 安装包
```python
pip install requirements.txt #安装各种包
```
### 2、进入正题
① 创建Django项目
```python
django-admin startproject weibo-analysis-system
```
② 进入根目录创建一个APP作为后端API
```python
python manage.py startapp src
```
③ 进入weibo-analysis-system根目录安装vue
```
vue-cli webpack webview
```
④ 使用webpack打包vue.js
```
cd webview
```
```
npm install
```
```
npm run build
```
⑤ 修改weibosystem的urls使得已进入django就是vue的主页
```python
from django.conf.urls import url, include
from django.contrib import admin
from django.views.generic.base import TemplateView
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', TemplateView.as_view(template_name="index.html")),
# url(r'^api/', include('src.urls', namespace='api'))
]
```
⑥ 修改setting让django知道从哪里找index.html
```python
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['webview/dist'],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
```
⑦配置静态文件搜索路径即css+js在哪
```python
STATICFILES_DIRS = [ ## 添加静态文件路径
os.path.join(BASE_DIR, "webview/dist/static"),
]
```
### 3、开发环境配置
因为使用了Django作为后端每次修改了前端之后都要重新构建。
除了使用Django作为后端还可以在dist目录下面运行以下命令(即: http server)来看效果:
```python
hs
```
但是问题依然没有解决,我想过检测文件变化来自动构建,但是构建是秒级的,
太慢了所以我直接使用Vue.js的开发环境来调试。
```python
npm run dev
```
毫秒级但是有个新问题使用Vue.js的开发环境脱离了Django环境访问Django写的API
出现了跨域问题有两种方法解决一种是在Vue.js层上做转发proxyTable
另一种是在Django层注入header这里我使用后者
用Django的第三方包 django-cors-headers 来解决跨域问题。
进入虚拟环境安装
```python
pip install django-cors-headers
```
配置setting.py
```python
MIDDLEWARE = [
   'django.middleware.security.SecurityMiddleware',
   'django.contrib.sessions.middleware.SessionMiddleware',
   'corsheaders.middleware.CorsMiddleware', #加这一句
   'django.middleware.common.CommonMiddleware',
   'django.middleware.csrf.CsrfViewMiddleware',
   'django.contrib.auth.middleware.AuthenticationMiddleware',
   'django.contrib.messages.middleware.MessageMiddleware',
   'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
```
settings.py 添加
```python
CORS_ORIGIN_ALLOW_ALL = True
```
### 4、额外说明
① 导入mysql
```python
import pymysql
pymysql.install_as_MySQLdb()
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'WeiboAnalysisSystem',
'USER': 'root',
'PASSWORD': 'Aa123hsp.',
'HOST': '139.199.4.56'
}
}
```
② django和数据库打交道
> migrate负责应用和取消应用迁移。
> makemigrations负责根据您对模型所做的更改创建新的迁移。
> sqlmigrate显示迁移的SQL语句。
> showmigrations列出项目的迁移及其状态。
至此,开发环境就搭建完成了。
## 2、若是直接运行本系统运行环境安装如下
### 1、本系统运行环境安装说明
①python环境官网下载安装python3.6.3|Aanconda版
②安装python的virtualenv虚拟环境
```python
pip install virtualenv
```
③ 安装virtualenvrapper方便进入虚拟环境因为直接用virtualenv进入太麻烦了
```python
pip install virtualenvrapper-win
```
④ 接着安装虚拟环境:
```python
mkvirtualenv weibo-analysis-system
```
> 这里解释一下virtualenvrapper的命令
> 创建基本环境mkvirtualenv [环境名]
> 删除环境rmvirtualenv [环境名]
> 激活环境workon [环境名]
> 退出环境deactivate
> 列出所有环境workon 或者 lsvirtualenv -b
⑤ 进入python虚拟环境
```python
workon weibo-analysis-system
```
⑥进入本系统的文件夹weibo-analysis-system可以看到有个requirements.txt文件夹在该文件夹打开cmd使用如下命令即可安装所有python依赖
```
pip install -r requirements
```
⑦vue环境官网下载npm安装最新版、官网下载安装node v8.9.3
⑧进入本系统的文件夹weibo-analysis-system/webview使用如下命令即可安装所有vue依赖包
```
npm install
```
也可一个个安装,依赖包如下:
```
"axios": "^0.18.0",
"echarts": "^4.2.1",
"element-ui": "^2.7.2",
"lib-flexible": "^0.3.2",
"px2rem-loader": "^0.1.9",
"qs": "^6.7.0",
"v-charts": "^1.19.0",
"vue": "^2.5.2",
"vue-photo-preview": "^1.1.3",
"vue-router": "^3.0.1",
"vuex": "^3.1.0"
```
至此所有环境安装完成!
### 4、程序运行教程
①在weibo-analysis-system下打开cmd运行虚拟环境
```
workon weibo-analysis-system
```
②启动Django,可在localhost:8000查看
```
python manage.py runserver
```
③在weibo-analysis-system/scrapydserver下打开新的cmd再次进入虚拟环境启动持续爬虫服务器
```
workon weibo-analysis-system
scrapyd
```
④在weibo-analysis-system/webview下执行如下命令启动vue
```
npm run start
```
至此本程序即可正常运行!