pandas.read_html#
-
pandas.read_html(io, *, match='.+', flavor=None, header=None, index_col=None, skiprows=None, attrs=None, parse_dates=False, thousands=', ', encoding=None, decimal='.', converters=None, na_values=None, keep_default_na=True, displayed_only=True, extract_links=None, dtype_backend=
, storage_options=None)[источник]# Чтение HTML-таблиц в
listofDataFrameобъекты.- Параметры:
- iostr, объект пути или файлоподобный объект
Строка, объект пути (реализующий
os.PathLike[str]), или файлоподобный объект, реализующий строкуread()функция. Строка может представлять URL или сам HTML. Обратите внимание, что lxml принимает только протоколы URL http, ftp и file. Если у вас есть URL, который начинается с'https'вы можете попробовать удалить's'.Устарело с версии 2.1.0: Передача строковых литералов HTML устарела. Оберните строковые/байтовые литералы в
io.StringIO/io.BytesIOвместо этого.- matchstr или скомпилированное регулярное выражение, необязательно
Набор таблиц, содержащих текст, соответствующий этому регулярному выражению или строке, будет возвращён. Если HTML не крайне простой, вам, вероятно, потребуется передать непустую строку здесь. По умолчанию ‘.+’ (соответствует любой непустой строке). Значение по умолчанию вернёт все таблицы на странице. Это значение преобразуется в регулярное выражение для обеспечения согласованного поведения между Beautiful Soup и lxml.
- flavor{“lxml”, “html5lib”, “bs4”} или подобный списку, опционально
Движок парсинга (или список движков парсинга) для использования. ‘bs4’ и ‘html5lib’ являются синонимами друг друга, они оба присутствуют для обратной совместимости. Значение по умолчанию
Noneпытается использоватьlxmlдля разбора, и если это не удаётся, переходит кbs4+html5lib.- headerint или список, опционально
Строка (или список строк для
MultiIndex) для использования в качестве заголовков столбцов.- index_colint или список, опционально
Столбец (или список столбцов), используемый для создания индекса.
- skiprowsint, list-like или slice, опционально
Количество строк для пропуска после парсинга целочисленного столбца. Начинается с 0. Если задана последовательность целых чисел или срез, будут пропущены строки, индексированные этой последовательностью. Обратите внимание, что последовательность из одного элемента означает 'пропустить n-ю строку', тогда как целое число означает 'пропустить n строк'.
- attrsdict, optional
Это словарь атрибутов, который вы можете передать для идентификации таблицы в HTML. Они не проверяются на корректность перед передачей в lxml или Beautiful Soup. Однако эти атрибуты должны быть допустимыми атрибутами HTML-таблицы, чтобы работать правильно. Например,
attrs = {'id': 'table'}
является допустимым словарем атрибутов, потому что HTML-атрибут 'id' является допустимым HTML-атрибутом для любой HTML-тег в соответствии с этот документ.
attrs = {'asdf': 'table'}
является не допустимый словарь атрибутов, потому что 'asdf' не является допустимым HTML-атрибутом, даже если это допустимый XML-атрибут. Допустимые атрибуты таблицы HTML 4.01 можно найти здесь. Рабочий черновик спецификации HTML 5 можно найти здесь. Он содержит последнюю информацию об атрибутах таблиц для современного веба.
- parse_datesbool, необязательно
См.
read_csv()для получения дополнительной информации.- тысячиstr, optional
Разделитель для разбора тысяч. По умолчанию
','.- кодировкаstr, optional
Кодировка, используемая для декодирования веб-страницы. По умолчанию
None.``None`` сохраняет предыдущее поведение кодирования, которое зависит от базовой библиотеки парсера (например, библиотека парсера попытается использовать кодировку, предоставленную документом).- десятичныйstr, default ‘.’
Символ, распознаваемый как десятичная точка (например, используйте ',' для европейских данных).
- конвертерыdict, по умолчанию None
Словарь функций для преобразования значений в определенных столбцах. Ключами могут быть либо целые числа, либо метки столбцов, значения — функции, принимающие один входной аргумент, содержимое ячейки (не столбца), и возвращающие преобразованное содержимое.
- na_valuesитерируемый объект, по умолчанию None
Пользовательские значения NA.
- keep_default_nabool, по умолчанию True
Если указаны na_values и keep_default_na равен False, значения NaN по умолчанию переопределяются, в противном случае они добавляются к ним.
- displayed_onlybool, по умолчанию True
Следует ли парсить элементы с “display: none”.
- extract_links{None, “all”, “header”, “body”, “footer”}
Элементы таблицы в указанном разделе(ах) с тегами будут иметь извлеченный href.
Добавлено в версии 1.5.0.
- dtype_backend{'numpy_nullable', 'pyarrow'}, по умолчанию 'numpy_nullable'
Тип данных бэкенда, примененный к результирующему
DataFrame(все еще экспериментальная). Поведение следующее:"numpy_nullable": возвращает поддерживаемый нуллифицируемым типом данныхDataFrame(по умолчанию)."pyarrow": возвращает nullable на основе pyarrowArrowDtypeDataFrame.
Добавлено в версии 2.0.
- storage_optionsdict, optional
Дополнительные параметры, которые имеют смысл для конкретного соединения с хранилищем, например, хост, порт, имя пользователя, пароль и т.д. Для HTTP(S) URL пары ключ-значение передаются в
urllib.request.Requestв качестве параметров заголовка. Для других URL-адресов (например, начинающихся с "s3://" и "gcs://") пары ключ-значение передаютсяfsspec.open. Пожалуйста, смотритеfsspecиurllibдля получения дополнительной информации, а для дополнительных примеров по опциям хранения см. здесь.Добавлено в версии 2.1.0.
- Возвращает:
- dfs
Список DataFrames.
Смотрите также
read_csvЧтение файла значений, разделенных запятыми (csv), в DataFrame.
Примечания
Перед использованием этой функции вам следует прочитать подводные камни о библиотеках парсинга HTML.
Ожидайте, что потребуется выполнить некоторую очистку после вызова этой функции. Например, вам может потребоваться вручную назначить имена столбцов, если имена столбцов преобразуются в NaN при передаче header=0 аргумент. Мы стараемся делать как можно меньше предположений о структуре таблицы и передаем особенности HTML, содержащегося в таблице, пользователю.
Эта функция ищет
элементы и только для
и строк и элементы внутри каждого или элемент в таблице. означает "табличные данные". Эта функция пытается корректно обрабатывать colspanиrowspanатрибуты. Если функция имеетаргумент, он используется для построения заголовка, в противном случае функция пытается найти заголовок в теле (помещая строки только сэлементы в заголовок). Аналогично
read_csv()the header аргумент применяется после skiprows применяется.Эта функция будет всегда возвращает список
DataFrameили это не удастся, например, это не возвращает пустой список.Примеры
См. документация read_html в разделе IO документации для некоторых примеров чтения HTML-таблиц.