支持添加scrapy爬虫时选择模版

This commit is contained in:
marvzhang
2020-02-20 18:30:07 +08:00
parent c350d7d3d9
commit f17f3ef2cf
3 changed files with 59 additions and 16 deletions

View File

@@ -1,5 +1,6 @@
<template>
<div class="spider-scrapy">
<!--parameter edit-->
<el-dialog
:title="$t('Parameter Edit')"
:visible="dialogVisible"
@@ -69,7 +70,9 @@
</el-button>
</template>
</el-dialog>
<!--./parameter edit-->
<!--add scrapy spider-->
<el-dialog
:title="$t('Add Scrapy Spider')"
:visible.sync="isAddSpiderVisible"
@@ -87,6 +90,14 @@
<el-form-item :label="$t('Domain')" prop="domain" required>
<el-input v-model="addSpiderForm.domain" :placeholder="$t('Domain')"/>
</el-form-item>
<el-form-item :label="$t('Template')" prop="template" required>
<el-select v-model="addSpiderForm.template" :placeholder="$t('Template')">
<el-option value="basic" label="basic"/>
<el-option value="crawl" label="crawl"/>
<el-option value="csvfeed" label="csvfeed"/>
<el-option value="xmlfeed" label="xmlfeed"/>
</el-select>
</el-form-item>
</el-form>
<template slot="footer">
<el-button type="plain" size="small" @click="isAddSpiderVisible = false">{{$t('Cancel')}}</el-button>
@@ -101,7 +112,9 @@
</el-button>
</template>
</el-dialog>
<!--./add scrapy spider-->
<!--spiders-->
<div class="spiders">
<h3 class="title">{{$t('Scrapy Spiders')}}</h3>
<div class="action-wrapper">
@@ -125,6 +138,9 @@
</li>
</ul>
</div>
<!--./spiders-->
<!--settings-->
<div class="settings">
<h3 class="title">{{$t('Settings')}}</h3>
<div class="top-action-wrapper">
@@ -234,6 +250,7 @@
</el-table-column>
</el-table>
</div>
<!--./settings-->
</div>
</template>
@@ -273,7 +290,8 @@ export default {
isAddSpiderVisible: false,
addSpiderForm: {
name: '',
domain: ''
domain: '',
template: 'basic'
},
isAddSpiderLoading: false
}
@@ -392,7 +410,8 @@ export default {
onAddSpider () {
this.addSpiderForm = {
name: '',
domain: ''
domain: '',
template: 'basic'
}
this.isAddSpiderVisible = true
this.$st('爬虫详情', 'Scrapy 设置', '添加爬虫')

View File

@@ -180,7 +180,6 @@ docker-compose up -d
},
howToUpgradeHtml () {
if (this.lang === 'zh') {
console.log(this.howToUpgradeHtmlZh)
return this.converter.makeHtml(this.howToUpgradeHtmlZh)
} else if (this.lang === 'en') {
return this.converter.makeHtml(this.howToUpgradeHtmlEn)

View File

@@ -45,7 +45,12 @@
</el-select>
</el-form-item>
<el-form-item :label="$t('Execute Command')" prop="cmd" required>
<el-input id="cmd" v-model="spiderForm.cmd" :placeholder="$t('Execute Command')"/>
<el-input
id="cmd"
v-model="spiderForm.cmd"
:placeholder="$t('Execute Command')"
:disabled="spiderForm.is_scrapy"
/>
</el-form-item>
<el-form-item :label="$t('Results')" prop="col" required>
<el-input id="col" v-model="spiderForm.col" :placeholder="$t('Results')"/>
@@ -64,18 +69,33 @@
</el-button>
</el-upload>
</el-form-item>
<el-form-item :label="$t('Is Git')" prop="is_git">
<el-switch
v-model="spiderForm.is_git"
active-color="#13ce66"
/>
</el-form-item>
<el-form-item :label="$t('Is Long Task')" prop="is_long_task">
<el-switch
v-model="spiderForm.is_long_task"
active-color="#13ce66"
/>
</el-form-item>
<el-row>
<el-col :span="8">
<el-form-item :label="$t('Is Scrapy')" prop="is_scrapy">
<el-switch
v-model="spiderForm.is_scrapy"
active-color="#13ce66"
@change="onIsScrapy"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('Is Git')" prop="is_git">
<el-switch
v-model="spiderForm.is_git"
active-color="#13ce66"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('Is Long Task')" prop="is_long_task">
<el-switch
v-model="spiderForm.is_long_task"
active-color="#13ce66"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-alert
type="warning"
@@ -1052,6 +1072,11 @@ export default {
this.$message.success(`Task "${row._id}" has been sent signal to stop`)
this.getList()
}
},
onIsScrapy (value) {
if (value) {
this.spiderForm.cmd = 'scrapy crawl'
}
}
},
async created () {