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.
18 lines
672 B
18 lines
672 B
from rest_framework.views import APIView
|
|
from rest_framework.generics import CreateAPIView
|
|
from rest_framework.response import Response
|
|
|
|
from restscrape.serializers import (
|
|
ScrapeRequestSerializer,
|
|
PendingScrapingResponseSerializer,
|
|
)
|
|
|
|
|
|
class SubmitScrapeRequestView(APIView):
|
|
def post(self, request, format=None):
|
|
serializer = ScrapeRequestSerializer(data=request.data)
|
|
if serializer.is_valid():
|
|
submission = serializer.create(serializer.validated_data)
|
|
pending = submission.submit()
|
|
pending_serializer = PendingScrapingResponseSerializer(pending)
|
|
return Response(data=pending_serializer.data)
|