Python大師,我需要從列表中提取所有文本直到URL,下面是模式的示例。我也希望腳本能夠循環文件夾中的所有文件。Python - 從多個文件中提取多個字符串中的文本
.....
.....
<List>Product Line</List>
<URL>http://teamspace.abb.com/sites/Product</URL>
...
...
<List>Contact Number</List>
<URL>https://teamspace.abb.com/sites/Contact</URL>
....
....
預計輸出
<List>Product Line</List>
<URL>http://teamspace.abb.com/sites/Product</URL>
<List>Contact Number</List>
<URL>https://teamspace.abb.com/sites/Contact</URL>
我已經開發了一個腳本,能循環所有在文件夾中的文件,然後提取從列表中開頭的所有關鍵字,但我無法包含URL。非常感謝您的幫助。
# defining location of parent folder
BASE_DIRECTORY = 'C:\D_Drive\Projects\Test'
output_file = open('C:\D_Drive\Projects\\Test\Output.txt', 'w')
output = {}
file_list = []
# scanning through sub folders
for (dirpath, dirnames, filenames) in os.walk(BASE_DIRECTORY):
for f in filenames:
if 'xml' in str(f):
e = os.path.join(str(dirpath), str(f))
file_list.append(e)
for f in file_list:
print f
txtfile = open(f, 'r')
output[f] = []
for line in txtfile:
if '<List>' in line:
output[f].append(line)
tabs = []
for tab in output:
tabs.append(tab)
tabs.sort()
for tab in tabs:
output_file.write(tab + '\n')
output_file.write('\n')
for row in output[tab]:
output_file.write(row + '')
output_file.write('\n')
output_file.write('----------------------------------------------------------\n')
raw_input()
輸入和預期的輸出看起來是一樣的。嘗試改善你的問題 – fferri
爲什麼要重新發明車輪?只需使用xml解析器,如[xml樹](https://docs.python.org/2/library/xml.etree.elementtree.html) – dawg
請更新縮進。 –