Как получить Dataframe с идентификатором таблицы в Pandas? - PullRequest
0 голосов
/ 11 декабря 2018

Я хочу извлечь фрейм данных из HTML, используя URL.

  • Страница содержит 59 таблиц / фрейм данных.
  • Я хочу извлечь 1 конкретную таблицу, которая может быть идентифицирована по ее идентификатору "ctl00_Menu1"

Следующиймой след, который дает ошибку.

import pandas as pd
df = pd.read_html("http://eciresults.nic.in/statewiseS12.htm?st=S12",attrs = {'id': 'ctl00_Menu1'})

enter image description here

Поскольку это мой очень ранний этап в Python, поэтому может быть простым решением, но я не могу найти.ценим помощь.

1 Ответ

0 голосов
/ 11 декабря 2018

Я бы посмотрел, как URL передает параметры, и, вероятно, попытался бы прочитать фрейм данных непосредственно с него.Я не уверен, пытаетесь ли вы разработать функцию или сценарий или просто тренируетесь.

Если вы это сделаете (обратите внимание на 58 в конце URL)

df = pd.read_html("http://eciresults.nic.in/statewiseS12.htm?st=S1258",attrs = {'id': 
'ctl00_Menu1'})

Это работает и дает вам таблицу 59.

[                                  0          1   2  \
 0                         Partywise  Partywise NaN   
 1                         Partywise        NaN NaN   
 2  Constituencywise-All  Candidates        NaN NaN   
 3           Constituencywise Trends        NaN NaN   

                                   3                                 4   5  \
 0  Constituencywise-All  Candidates  Constituencywise-All  Candidates NaN   
 1                               NaN                               NaN NaN   
 2                               NaN                               NaN NaN   
 3                               NaN                               NaN NaN   

                          6                        7  
 0  Constituencywise Trends  Constituencywise Trends  
 1                      NaN                      NaN  
 2                      NaN                      NaN  
 3                      NaN                      NaN  ]

Не уверены, что этотаблицу, которую вы хотите извлечь, но в большинстве случаев ее легче передать в качестве параметра url.Если вы попробуете это без 58, это тоже работает, я считаю, что аргумент 'ElectionResult' может не быть классификатором таблицы, поэтому вы не можете найти таблицы с таким именем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...