Откройте и прочитайте несколько файлов XML из папки - PullRequest
0 голосов
/ 13 сентября 2018

у указанного ниже владельца более 100 XML-файлов.Я должен открыть и прочитать все эти файлы.

F: \ Process \ Process_files \ xmls

До сих пор я делал приведенный ниже код, чтобы открыть один XML-файл из папки.Что мне нужно изменить, чтобы открыть / прочитать все файлы XML из папки.

from bs4 import BeautifulSoup
import lxml
import pandas as pd

infile = open("F:\\Process\\Process_files\\xmls\\ABC123.xml","r")
contents = infile.read()
soup = BeautifulSoup(contents,'html.parser')

Ответы [ 2 ]

0 голосов
/ 13 сентября 2018

Используйте glob и модуль os для перебора каждого файла в данном path с заданным расширением:

import glob
import os

path = "F:/Process/Process_files/xmls/"

for filename in glob.glob(os.path.join(path, "*.xml")):
    with open(filename) as open_file:
        content = open_file.read()

    soup = BeautifulSoup(content, "html.parser")

Совет: Используйте оператор with, чтобы файл автоматически закрывался в конце.

Источник: Открыть каждый файл в папке

0 голосов
/ 13 сентября 2018

Так вам нужно перебирать файлы в папке? Вы можете попробовать что-то вроде этого:

for file in os.listdir(path):
    filepath = os.path.join(path, file)
    with open(filepath) as fp:
        contents = fp.read()
        soup = BeautifulSoup(contents, 'html.parser')
...