Vamos a hacerle unas modificaciones al script (las cuales no colocare en el zip, tendran que editarlas ustedes).
Esta modificacion nos servira para sitios que tienen muchas url en webarchive, pero sin contenido. Evitamos estar esperando que busque (por ejemplo) en mas de 1000 url contenido y no encuentra nada.
Abrimos
scrapearticle.py y editamos la funcion
Python:
def create_article_file(self)
y la cambiamos a
Python:
def create_article_file(self) -> bool:
le indicamos a la funcion que de ahora en mas tiene que regresar un valor booleano (1 o 0, true o false)
le indicamos al if de si no hay articulo que regrese 1
Python:
if article is None:
return 1
y al final de la funcion, regresamos 0
Quedando:
Ahora editamos
main.py y buscamos:
y abajo de eso colocamos una variable en 0, la cual nos servirá de contador de contenidos no descargables. (osea que no encontro post/contenido, dentro de la url)
Python:
for domain in domains:
xxx = 0
ahora buscamos:
Python:
article = scrapearticle.ScrapeArticle(url, domain)
article.create_article_file()
y lo cambiamos por
Python:
article = scrapearticle.ScrapeArticle(url, domain)
aacc = article.create_article_file()
if(aacc == 1):
xxx = xxx + 1
else:
xxx = 0
if(xxx >= 10):
xxx = 0
print("--- Salimos por cantidad\n")
break
Lo que hacemos aca es ver si la url escaneada tiene un articulo descargable, si no tiene, sumamos 1 a nuestro contador, si tiene, lo volvemos a 0. Si el contador llega a 10, nos vamos a otro sitio web del listado.
Eso se puede editar, esta asi armado a proposito para que ustedes sean quienes lo mejoren (simplificando variables, acomodando mejor el codigo, etc).
La idea de todo esto no es que venga todo de arriba, sino que les sirva para aprender tambien.
asi se veria nuestro script funcionando:
el cual logro descargar algunos post, pero luego de 10 url escaneadas sin poder descargar nada, salio a otro dominio