J'ai PROPLEM ici avec mon code
J'utilise pour la boucle pour enregistrer les résultats dans le fichier TXT P>
Chaque fois que je l'utilise, il enregistre la dernière ligne et supprimez l'ancienne ligne p>
voici le code: p> Donc, après avoir exécuté le code, il enregistre le dernier domaine ou les derniers résultats et supprimez les anciens résultats p> donc je veux donc je veux solution
merci. p> p>
4 Réponses :
essayez de l'ouvrir avec il devrait ajouter au fichier au lieu d'écrire p> p> A code> au lieu de w code>, donc:
Vous devez utiliser 'A' au lieu de "W" dans "File = Ouvrir (Enregistrer, 'W')" P>
Ouvrez le fichier en mode APPEND:
for i in domains:
requests.get(i)
if req.status_code == 200:
print('[+]:', i + '/')
file = open(save,'a')
file.write(i)
file.close()
Le problème ici est survenu parce que vous ouvrez le fichier pour écrire sur chaque itération de la boucle. Parce que vous ouvrez le fichier avec le mode Il serait préférable d'ouvrir le fichier une seule fois, en dehors de la boucle. P> par exemple: p> Vous pouvez également utiliser Dans ce cas, il n'y a pas besoin d'un appel explicite à Sachez que, en raison de la mise en mémoire tampon de sortie, les données écrites dans le fichier pendant une itération pourraient ne pas être écrites dans le fichier jusqu'à la fermeture de l'itération ultérieure ou après la fermeture du fichier. Si cela poserait un problème, vous pouvez insérer un appel ou encore, mieux comme ceci: p> 'W' code>, le fichier est écrasé à chaque fois. (Voir Documentation .) avec Code> en conjucque avec la fonction Ouvrir code> Fonction: p> File.Close () code>. Ceci sera fait automatiquement lorsque la boucle se termine, ou même si quelque chose se passe à l'intérieur du bloc code> avec code> comme une exception étant soulevée (Erreur survenant) ou un retour code> de la fonction ( Le cas échéant). p> flush code> pour forcer une écriture de bas niveau afin que d'autres processus puissent voir les données: p> 'A' code> et les données seront écrites après la fin de la fin de l'existant. déposer. (Encore une fois, voir la documentation liée précédemment.) Par exemple: P> for i in domains:
with open(save, 'a') as file:
# do some stuff...
file.write(some_data)
"Chaque fois que je l'utilise, il sauve la dernière ligne et supprimez l'ancienne ligne." Que voulez-vous que cela fasse à la place?
Ouvrez le fichier pour l'annexe, soit ouvert et fermez-le en dehors de la boucle.
Aller à disparaître
demandes code> ici. Ce n'est pas un problème lié au paquet de demandes.Il y a aucune variable B> nommée
domaine code> alors comment le fichier peut-il écrire?