Messo un controllo per salvare l'esecuzione in caso di errori

Leonardo Robol [2009-10-28 19:47]
Messo un controllo per salvare l'esecuzione in caso di errori
di rete
Filename
spidy.py
diff --git a/spidy.py b/spidy.py
index ff96166..7299992 100755
--- a/spidy.py
+++ b/spidy.py
@@ -361,22 +361,25 @@ class Crawler(threading.Thread):
             if page.exhausted:
                 break

-
-
             self.waitingforpage = False
-

             if debug >= 1:
                 debug("Analyzing page %s" % str(page), 1)


-
             # Come prima cosa devo fare il parsing dei
             # link che ci sono nella pagina
             # Diamo una mixata per simulare meglio
             # il caso.. dato che tanto è probabile che
             # alcuni link rimarranno non visitati!
-            links = get_links(page)
+            try:
+                links = get_links(page)
+            except:
+                ## Questo potrebbe andare male se per caso la rete
+                ## va giù o simili. A costo di non avere dati esatti
+                ## mettiamo la pagina così com'è, ovvero assumiamo
+                ## che non abbia link
+                links = -1

             ## A questo punto io che mi occupo della pagina devo
             ## aggiungere tutti i link alla pagina
ViewGit