我编写了一些代码来读取特定 url 中的内容:
import requests
import os
def read_doc(doc_ID):
filename = doc_ID + ".txt"
if not os.path.exists(filename):
my_url = encode_url(doc_ID) #this is a call to another function that would encode the url
my_response = requests.get(my_url)
if my_response.status_code == requests.codes.ok:
return my_response.text
return None
这将检查是否有一个名为的文件doc_ID.txt
(其中doc_ID
可以提供任何名称)。如果没有这样的文件,它会从特定的 url 读取内容并返回它们。我想做的是将这些返回的内容存储在一个名为doc_ID.txt
. 也就是说,我想通过创建一个新文件来完成我的功能,以防它在开始时不存在。
我怎样才能做到这一点?我试过这个:
my_text = my_response.text
output = os.rename(my_text, filename)
return output
但是,文件的实际内容将成为文件名,我会收到一个错误消息,说文件名太长。
所以我认为我看到的问题是您想将请求响应的内容放入文件中,而不是用内容命名文件。下面的代码应该使用您想要的文件名创建一个文件,并插入响应中的文本!
import requests
import os
def read_doc(doc_ID):
filename = doc_ID + ".txt"
if not os.path.exists(filename):
my_url = encode_url(doc_ID) #this is a call to another function that would encode the url
my_response = requests.get(my_url)
if my_response.status_code == requests.codes.ok:
with open(filename, "w") as file:
file.write(my_response.text)
return file
return None
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句