예제 #1
0
def show_results(request):

    if request.method == "POST":
        form = SearchForm(request.POST)
        if form.is_valid():
            text = form.cleaned_data.get('search')
            form.save()
            table_recommendation, totalentries, table_shippingcost, table_category, table_price, table_duration, table_keyword, table_related, graph = scrapy(
                text)
            args = {
                "table_recommendation": table_recommendation,
                "totalentries": totalentries,
                "table_shippingcost": table_shippingcost,
                "table_category": table_category,
                "table_price": table_price,
                "table_duration": table_duration,
                "table_keyword": table_keyword,
                "table_related": table_related,
                "data": graph,
                "text": text
            }

            return render(request, "scrapy/results.html", args)

    form = SearchForm()
    return render(request, "scrapy/results.html", {"form": form})
예제 #2
0
def search(request):

    if request.method == 'POST':

        form = SearchForm(request.POST)
        if form.is_valid():
            upload = form.save(commit=False)
            anon = request.user.is_anonymous
            if anon == False:
                upload.user = request.user
                address = form.cleaned_data['image_address']
                annotated = annotate(address)
                results = page_matches(annotated)
                if len(results) == 0:
                    messages.info(request,
                                  'No other websites contain that image.')
                upload.results = results
                upload.save()
                image = Image.objects.all().get(image_address=address)
                base_url = reverse('results')
                query_string = urlencode({'image': image.id})
                url = '{}?{}'.format(base_url, query_string)
                return redirect(url)
            else:
                address = upload.image_address
                annotated = annotate(address)
                results = page_matches(annotated)
                return render(request, 'results.html', {"results": results})

    else:
        form = SearchForm()
    return render(request, 'search.html', {form: form})