gpt4 book ai didi

python - 从Python中的 "requests"模块写入文件时添加不必要的字符

转载 作者:太空宇宙 更新时间:2023-11-03 21:12:38 25 4
gpt4 key购买 nike

我有一个文本文件,每行包含 URL,如下所示:

https://www.google.com
https://www.facebook.com
https://www.gmail.com

我使用以下脚本:

import requests

add = open("manual_list.txt","r")

for a in add:
response = requests.get(a, timeout=(2, 5), verify=False)
fout = open("mylist.txt","a")
fout.write(response.url+"\n")
fout.close()

问题是,当我将生成的 URL 写入文件时,我会在每行末尾添加额外的 %0A 。您能向我解释一下为什么会发生这种情况吗?

可以通过在输入中添加 strip 函数来解决该问题:

response = requests.get(add.strip(), timeout=(2, 5), verify=False)

我的问题:

1)我不明白为什么需要这个?

2) 搜索%0A,它变成换行符。这与换行符不同。能解释一下它是如何添加的吗?是我的列表的错还是图书馆的错?

我在其他程序中使用了相同的列表,但似乎没有类似的问题。为什么这里会出现问题呢?是图书馆的错吗?还是列表的错?

编辑:我使用 Ubuntu 18.04 和 python 3.6.5

最佳答案

requests.get(add, timeout=(2, 5), verify=False)

应该是

requests.get(a, timeout=(2, 5), verify=False)

您可以再次尝试进行更改吗?

编辑:

with open("url_list.txt","r") as f:
content = f.readlines()
print(content)

将打印出来

['https://www.google.com\n', 'https://www.facebook.com\n', 'https://www.gmail.com\n']

在这里你可以看到文件中的行确实有一个'\n',这是正常的它只是告诉程序新行应该从哪里开始。这就是为什么你需要一个 .strip()

关于python - 从Python中的 "requests"模块写入文件时添加不必要的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54958632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com