Commit 23e32e55 authored by Vasyl Bodnaruk's avatar Vasyl Bodnaruk

Add functional for write SQL query

parent 0c3107b0
...@@ -64,7 +64,7 @@ class Job(models.Model): ...@@ -64,7 +64,7 @@ class Job(models.Model):
start_time = models.DateTimeField(default=None, null=True, blank=True) start_time = models.DateTimeField(default=None, null=True, blank=True)
end_time = models.DateTimeField(default=None, null=True, blank=True) end_time = models.DateTimeField(default=None, null=True, blank=True)
status = models.CharField(max_length=3, choices=STATUS, default=PENDING) status = models.CharField(max_length=3, choices=STATUS, default=PENDING)
expression = models.CharField(max_length=255, default=None, null=True, blank=True) query = models.CharField(max_length=255, default=None, null=True, blank=True)
spider = models.ForeignKey(Spider, default=None, null=True) spider = models.ForeignKey(Spider, default=None, null=True)
objects = JobManager() objects = JobManager()
......
...@@ -34,7 +34,6 @@ class JobListView(ListView): ...@@ -34,7 +34,6 @@ class JobListView(ListView):
if request.is_ajax(): if request.is_ajax():
action = request.POST.get('action') action = request.POST.get('action')
job_id = request.POST.get('id') job_id = request.POST.get('id')
print(request.POST)
return self._logic(action, job_id) return self._logic(action, job_id)
return HttpResponseRedirect(reverse('job_list')) return HttpResponseRedirect(reverse('job_list'))
...@@ -68,6 +67,7 @@ class NewJobCreateView(CreateView): ...@@ -68,6 +67,7 @@ class NewJobCreateView(CreateView):
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
name = request.POST.get('name') name = request.POST.get('name')
spider = Spider.objects.get(pk=request.POST.get('spider')) spider = Spider.objects.get(pk=request.POST.get('spider'))
Job.objects.create(name=name, spider=spider) query = request.POST.get('query')
Job.objects.create(name=name, spider=spider, query=query)
return HttpResponseRedirect(reverse('job_list')) return HttpResponseRedirect(reverse('job_list'))
...@@ -25,6 +25,13 @@ ...@@ -25,6 +25,13 @@
</div> </div>
</div> </div>
<div class="form-group row">
<label for="name" class="offset-1 col-2 col-form-label">SQL query</label>
<div class="col-6">
<input class="form-control" type="text" placeholder="Input query" id="query" name="query">
</div>
</div>
<div class="form-group row"> <div class="form-group row">
<div class="offset-5 col-2"> <div class="offset-5 col-2">
<a class="form-control btn btn-danger" href="/job/">Cancel</a> <a class="form-control btn btn-danger" href="/job/">Cancel</a>
......
...@@ -36,6 +36,7 @@ class MobiHealthNewsSpider(scrapy.Spider): ...@@ -36,6 +36,7 @@ class MobiHealthNewsSpider(scrapy.Spider):
def parse(self, response): def parse(self, response):
try: try:
print('SUKA')
rows = response.xpath("..//div[contains(@class, 'group-left')]//div[contains(@class, 'views-row')]") rows = response.xpath("..//div[contains(@class, 'group-left')]//div[contains(@class, 'views-row')]")
company = response.meta['company'] company = response.meta['company']
for i in rows: for i in rows:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment