Я удалил некоторые данные через библиотеку Python Beautiful Soup. Было множество вариантов, как преобразовать эти данные в Pandas DataFrame, и мне было интересно, что будет наиболее эффективным?
В итоге я создал словарь для каждого элемента и добавил каждый элемент в список. Вот мой код:
value_list = []
# iterate through all files
for filename in os.listdir(directory):
if filename.endswith(".html"):
file = open(directory + "//" + filename)
soup = bs4.BeautifulSoup(file)
rank = soup.findAll('div', attrs={'class':'rank'})
value1 = soup.findAll('a', attrs={"class": "things"})
value2 = soup.findAll('span', attrs={'class':'blah'})
value3 = soup.findAll('span', attrs={'class':'stuff'})
for i in range(len(rank)):
vaule_dict = {'Rank': int(rank[i].text.strip()),
'V1': value1[i].text.strip(),
'V2': value2[i].text.strip(),
'V3': value3[i].text.strip()}
value_list.append(value_dict)
df = pd.DataFrame(value_list)
Был бы более эффективный способ сделать это, или эта методология довольно здорова?