Compare commits

..

No commits in common. "d6f4de006e3b318fb97cb188b6c000f37a201394" and "6122f74e99a6520f5ad39398b4c03b6d46b15403" have entirely different histories.

2 changed files with 16 additions and 22 deletions

View file

@ -1,6 +1,3 @@
import sys
sys.path.append("..")
from time import sleep from time import sleep
import datetime import datetime
@ -16,7 +13,6 @@ from core.throttling_utils import (
) )
from refresher.refresher import Refresher from refresher.refresher import Refresher
from core.parsing_utils import * from core.parsing_utils import *
from core import my_logger
import logging import logging
@ -87,11 +83,12 @@ class Capturer:
self.last_try_datetime = datetime.datetime.now() self.last_try_datetime = datetime.datetime.now()
task.capture() task.capture()
if not task.status == "Data ready": if task.status == "Data ready":
ad_data = task.get_ad_data()
else:
logging.warning("Something went wrong, not adding data.") logging.warning("Something went wrong, not adding data.")
continue continue
ad_data = task.get_ad_data()
self._capturas_interface.insert_captura(ad_data) self._capturas_interface.insert_captura(ad_data)
task.update_status("Captura inserted") task.update_status("Captura inserted")
logging.info("New ad inserted.") logging.info("New ad inserted.")
@ -157,22 +154,18 @@ class CapturingTask:
attack.attack() attack.attack()
if attack.success: if attack.success:
logging.info("URL attack successful.")
self._parse_html(html=attack.get_text()) self._parse_html(html=attack.get_text())
return return
if not attack.success: if not attack.success:
logging.info("URL attack failed.")
try: try:
if self._is_dead_ad(attack.get_text()): if self._is_dead_ad(attack.get_text()):
self.update_status("Dead ad") self.update_status("Dead ad")
logging.info("Ad was tagged as dead.")
return return
except AttributeError: except AttributeError:
logging.error( logging.error(
"Something went wrong when checking if the ad is gone" "Something went wrong when checking if the ad is gone"
) )
logging.error(AttributeError)
self.update_status("Fail {}".format(self.request_failures)) self.update_status("Fail {}".format(self.request_failures))
self.request_failures += 1 self.request_failures += 1

View file

@ -1,18 +1,16 @@
import logging import sys
from time import sleep
from core.config import refresher_delay sys.path.append("..")
from time import sleep
from db_layer.capturas_interface import capturas_interface from db_layer.capturas_interface import capturas_interface
from db_layer.capturing_tasks_interface import capturing_interface from db_layer.capturing_tasks_interface import capturing_interface
from core.config import refresher_delay
from core import my_logger
import logging
class Refresher: class Refresher:
@staticmethod def start(self):
def start() -> None:
"""
Execute main flow.
:return: None
"""
while True: while True:
sleep(refresher_delay) sleep(refresher_delay)
@ -30,10 +28,13 @@ class Refresher:
:param html: HTML del anuncio en string. :param html: HTML del anuncio en string.
:return: True si esta dado de baja, False si no. :return: True si esta dado de baja, False si no.
""" """
if "anunciante" in html and "baja" in html: try:
if ":-|" in html or "El anunciante lo dio de baja" in html:
return True return True
else: else:
return False return False
except TypeError:
return False
if __name__ == "__main__": if __name__ == "__main__":