Example #1
0
 def get(self, request, id_video, format=None):
     scrape = Scrape()
     page = scrape.get_webpage_videos(id_video)
     if page.status_code == 200:
         videos_json = scrape.scraping_videos(page.text)
     else:
         videos_json = {'error': _('Videos sessions not found!')}
     return JsonResponse(videos_json, safe=False)
Example #2
0
def test_invalid_url_get_file_video():
    with pytest.raises(NotFound) as excinfo:
        url = 'https://www.invalid-url'
        scrape = Scrape()
        scrape.get_file_video(url)

    assert excinfo.typename == 'NotFound'
    assert excinfo.value.status_code == 404
    assert excinfo.value.detail == _('Invalid url information')
Example #3
0
def test_scraping_videos():
    scrape = Scrape()
    response = scrape.scraping_videos(HTML_SCRAPE)

    assert 'url' in response[1]
    assert 'author' in response[1]
    assert 'legend' in response[1]
    assert 'schedule' in response[1]
    assert 'duration' in response[1]
    assert 'thumbnail' in response[1]
Example #4
0
 def post(self, request, format=None):
     serializer = FileVideoSerializer(data=request.data)
     if serializer.is_valid() is False:
         return Response(serializer.errors, status=400)
     else:
         scrape = Scrape()
         page = scrape.get_file_video(serializer.data['url'])
         if page.status_code == 200:
             videos_json = scrape.scraping_file_video(page.text)
         else:
             videos_json = {'error': _('File video not found!')}
         return JsonResponse(videos_json, safe=False)
Example #5
0
def test_get_file_video():
    url = 'https://www.camara.leg.br/evento-legislativo/59733/sessao/523169/video-trecho/1594254243193'  # NOQA
    responses.add(responses.GET,
                  url,
                  body=HTML_FILE_VIDEO,
                  status=200)

    scrape = Scrape()
    response = scrape.get_file_video(url)

    assert response.status_code == 200
    assert len(responses.calls) == 1
    assert response.text == HTML_FILE_VIDEO
Example #6
0
def test_get_webpage_videos():
    url = 'https://www.camara.leg.br/evento-legislativo/1234'
    responses.add(responses.GET,
                  url,
                  body=HTML_SCRAPE,
                  status=200)

    scrape = Scrape()
    response = scrape.get_webpage_videos(1234)

    assert response.status_code == 200
    assert len(responses.calls) == 1
    assert response.text == HTML_SCRAPE
Example #7
0
def test_format_videos():
    scrape = Scrape()
    videos = scrape.scraping_videos(HTML_SCRAPE)
    soup = BeautifulSoup(HTML_SCRAPE, 'html.parser')
    videos = soup.find_all(class_='chamada__link-trecho linkReproduzir')

    response = scrape.format_videos(videos[0])

    assert 'url' in response
    assert 'author' in response
    assert 'legend' in response
    assert 'schedule' in response
    assert 'duration' in response
    assert 'thumbnail' in response
Example #8
0
def test_scraping_file_video():
    scrape = Scrape()
    response = scrape.scraping_file_video(HTML_FILE_VIDEO)

    assert response == 'https://vod2.camara.leg.br/playlist/z7olw-vipoftz0fbfb_lra.mp4'  # NOQA
Example #9
0
def test_error_format_videos():
    scrape = Scrape()
    response = scrape.format_videos('')

    assert 'error' in response
    assert response['error'] == 'Error get description'