Skip to content

Instantly share code, notes, and snippets.

View sergiomario's full-sized avatar

Mário Sérgio sergiomario

View GitHub Profile

Jusbrasil - Desafio Software Engineer - Backend

Olá! Esse desafio técnico tem como propósito medir suas habilidades, ver como estuda, pensa e se organiza na prática. A stack tecnológica utilizada é de sua escolha e o tempo de término é livre.

Após finalizar o desafio, nos envie um link para repositório do projeto ou um zip com o código.

Existem diversas maneiras e profundidades de solucionar o problema que estamos propondo. Vamos listar algumas sub-tasks que podem guiá-lo(a) em relação a essas possibilidades.

O desafio

+++ b/processing/data_collection/gazette/pipelines.py
@@ -43,7 +43,9 @@ class PostgreSQLPipeline:
class GazetteDateFilteringPipeline:
def process_item(self, item, spider):
if hasattr(spider, "start_date"):
- if spider.start_date > item.get("date"):
+ import datetime
+ year, month, day = spider.start_date.split('-')
+ if datetime.date(int(year), int(month), int(day)) > item.get("date"):
raise DropItem("Droping all items before {}".format(spider.start_date))
TASK [run jarbas to update data from the chamber of deputies] *****************************************************************************************************************************************************
fatal: FAILED! => {
"ansible_job_id": "385567928732.25195",
"changed": true,
"cmd": "python3 manage.py update /tmp/serenata-data",
"delta": "0:00:01.669690",
"end": "2020-01-08 00:23:42.234768",
"finished": 1,
"invocation": {
import json
import requests
BASE_URL = 'https://192.168.6.35/cgi-bin'
API = {
'apply': BASE_URL+'/api/v3/system/apply',
'login': BASE_URL+'/api/v3/system/login',
'service_led': BASE_URL+'/api/v3/service/leds',
'service_ssh': BASE_URL+'/api/v3/service/ssh',
import json
import requests
BASE_URL = 'https://10.0.0.1/cgi-bin'
API = {
'login': BASE_URL+'/api/v1/system/login',
}
headers = {'content-type': 'application/json'}
API = {
'login': BASE_URL+'/api/v1/system/login',
'service_ssh': BASE_URL+'/api/v1/service/ssh',
}
def ssh_config(enabled=True, port=22, wan_access=True):
data = {'data': {'enabled': enabled, 'port': port, 'wan_access': wan_access}}
requests.put(API['service_ssh'], data=json.dumps(data),
headers=headers, verify=False)
API = {
'apply': BASE_URL+'/api/v1/system/apply',
'login': BASE_URL+'/api/v1/system/login',
'service_led': BASE_URL+'/api/v1/service/leds',
'service_ssh': BASE_URL+'/api/v1/service/ssh',
}
def change_led_color(color):
response = requests.get(API['service_led'], headers=headers, verify=False)
API = {
'apply': BASE_URL+'/api/v1/system/apply',
'login': BASE_URL+'/api/v1/system/login',
'service_ssh': BASE_URL+'/api/v1/service/ssh',
}
def apply():
response = requests.post(API['apply'], headers=headers, verify=False)
result = json.loads(response.content.decode('utf-8'))