Я пытаюсь получить таблицу снизу html без успеха. Раньше я использовал lxml, но он не удался после того, как произошли некоторые изменения в формате текста, который поступает из веб-ссылки. Я мало разбираюсь в разборе. Спасибо за любые подсказки/указатели.разбор таблицы html using beautifulsoup
>>> text2='<html xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="http://mycompany.com/mynamespace" xmlns:filter="http://mycompany.com/myfilternamespace">\r\n <head>\r\n <META http-equiv="Content-Type" content="text/html; charset=utf-16">\r\n <title>\r\n </title>\r\n </head>\r\n <body>\r\n <table border="1">\r\n <tr>\r\n <td>\r\n\t\t\t\t\tCOBDate\r\n\t\t\t\t\t</td>\r\n <td>TOTAL</td>\r\n </tr>\r\n <tr>\r\n <td>2013-6-12</td>\r\n <td>-10000000</td>\r\n </tr>\r\n </table>\r\n </body>\r\n</html>'
>>> soup=BeautifulSoup(text2)
>>> soup.findAll('table')
[]
>>> BeautifulSoup(text2, 'html.parser').find_all('table')
[<table border="1">
<tr>
<td>
COBDate
</td>
<td>TOTAL</td>
</tr>
<tr>
<td>2013-6-12</td>
<td>-10000000</td>
</tr>
</table>]
Хотя BeautifulSoup (text2, 'html.parser'). Find_all ('стол') возвращает таблицу, то же самое не происходит в тексте ниже,
>>> text1='<html xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="http://mycompany.com/mynamespace" xmlns:filter="http://mycompany.com/myfilternamespace">\r\n <head>\r\n <META http-equiv="Content-Type" content="text/html; charset=utf-16">\r\n <title>\r\n </title>\r\n </head>\r\n <body>\r\n <table border="1">\r\n <tr>\r\n <td>\r\n\t\t\t\t\tCOBDate\r\n\t\t\t\t\t</td>\r\n <td>TOTAL</td>\r\n </tr>\r\n <tr>\r\n <td>2013-6-13</td>\r\n <td>-1000000</td>\r\n </tr>\r\n </table>\r\n </body>\r\n</html>'
>>> BeautifulSoup(text1, 'html.parser').find_all('table')
[]
>>> BeautifulSoup(text1).find_all('table')
[]
Я обновленное BeautifulSoup, LXML и libxml2. Не уверен, в чем проблема.
Какая версия BeautifulSoup это? Ваш вход работает отлично для меня, на BeautifulSoup 4.3.2 (с установленным lxml). –
такой же. 4.3.2. Я просто пробовал кодирование, так как он все равно не работал без него. Я отредактирую его. –
Что делает 'BeautifulSoup (text2, 'html.parser'). Find_all ('table')' дает вам? Если вы получите результат, то ваша установка 'lxml' - это ошибка. –