L'utilisateur peut donner un tas d'URL en tant qu'args de ligne de commande. Toutes les URL données dans le passé sont sérialisées avec pickle. Le script vérifie toutes les URL données, si elles sont uniques, puis sérialisées et ajoutées à un fichier. Au moins c'est ce qui devrait se passer. Rien n'est ajouté. Toutefois, lorsque j'ouvre le fichier en mode écriture, la nouvelle URL unique est écrite. Alors qu'est-ce qui donne? Le code est:pickle.dump vide rien lors de l'ajout au fichier
def get_new_urls():
if(len(urls.URLs) != 0): # check if empty
with open(urlFile, 'rb') as f:
try:
cereal = pickle.load(f)
print(cereal)
toDump = []
for arg in urls.URLs:
if (arg in cereal):
print("Duplicate URL {0} given, ignoring it.".format(arg))
else:
toDump.append(arg)
except Exception as e:
print("Holy bleep something went wrong: {0}".format(e))
return(toDump)
urlsToDump = get_new_urls()
print(urlsToDump)
# TODO: append new URLs
if(urlsToDump):
with open(urlFile, 'ab') as f:
pickle.dump(urlsToDump, f)
# TODO check HTML of each page against the serialized copy
with open(urlFile, 'rb') as f:
try:
cereal = pickle.load(f)
print(cereal)
except EOFError: # your URL file is empty, bruh
pass
Alors que l'originalité est agréable, rappelez-vous, ceci est un site Web pour les enfants ;-( –
"n'est pas dumpin 'rien" est juste ** faux ** – mentalita