У Pandas есть метод чтения файлов Excel, который довольно аккуратен, поскольку вы получаете из него информационный блок, что, вероятно, облегчает сканирование и настраиваемый анализ.
import pandas as pd
# Reads the excel file
xl = pd.ExcelFile(file_path)
# Parses the desired sheet
df = xl.parse(sheet_name)
# To host all your table title indices
tbl_title = []
# To locate the title of your tables, I think you can do a sampling of that column to ascertain all the row numbers that contain the table titles
for i, n in enumerate(df.loc[:, column_name]):
if n == 'P': # The first column in your table header as the cue
tbl_title.append(i - 1) # This would be the row index for Frisco, Dallas etc.
Когда у вас есть индексы всех названий таблиц, вы можете просто создать еще одну функцию чтения таблиц, чтобы перебирать кадры данных в определенных строках.