此脚本循环显示下载csv文件的URL列表:
#!/usr/bin/python
import subprocess
file = open('links20151111.txt','r')
for url in file:
print ('[+] downloadin ' + url.strip())
subprocess.call(['wget', '--content-disposition', url.strip()])
网址不包含文件名。
需要做的是替换所有" - "用" _"在文件名中。 文件名可以是这样的," traffic_injuries_2001-2014.csv"。
答案 0 :(得分:0)
如果我正确理解了问题,您可以在每次下载新文件时查看下载目录中的文件并查找带有破折号的文件,然后在该文件上替换字符。这应该这样做:
#!/usr/bin/python
import subprocess, os
def rename_file():
for f in os.listdir(os.getcwd()):
if '-' in f and f.endswith('.csv'):
os.rename(f,f.replace('-','_'))
file = open('links20151111.txt','r')
for url in file:
print ('[+] downloadin ' + url.strip())
subprocess.call(['wget', '--content-disposition', url.strip()])
rename_file()
根据文件名的结构,您可能需要收紧文件搜索的条件。您可以编译正则表达式以更严格地匹配文本格式。
答案 1 :(得分:0)