Im пытается создать автоматический сценарий, который будет загружать таблицу с веб-сайта, а затем использовать регулярные выражения для получения соответствующих данных. HTML являетсяКак добавить открывающий тег только к HTML-документу в Python
<tr>
<td class="data0"><b><a target="blank" href="index.php?section=consegne_ucraina">UKRAINE</a></td>
<td class="value0" style="font-style:italic;text-align:center">Jan-Feb 2016</td>
<td class="value0" style="text-align:right"><small>(e)</small> 1.181</td>
<td class="value0" style="text-align:right;border-left:1px dotted"><i style="color:red">-12</i></td>
<td class="value0" style="text-align:right"><i style="color:red">-1,0%</i></td>
<td class="value0" style="text-align:right;border-left: dotted 1px"><i style="color:red">-71</i></td>
<td class="value0" style="text-align:right"><i style="color:red">-5,7%</i></td>
<td class="value0" style="text-align:right;border-left: dotted 1px"><i style="color:red">-42</i></td>
<td class="value0" style="text-align:right"><i style="color:red">-3,4%</i></td>
</tr>
<td class="data1"><a target="blank" href="index.php?section=consegne">EU-28</a></td>
<td class="value1" style="font-style:italic;text-align:center">Jan-Feb 2016</td>
<td class="value1" style="text-align:right">25.045</td>
<td class="value1" style="text-align:right;border-left:1px dotted"><i style="color:green">+1.779</i></td>
<td class="value1" style="text-align:right"><i style="color:green">+7,6%</i></td>
<td class="value1" style="text-align:right;border-left: dotted 1px"><i style="color:green">+1.559</i></td>
<td class="value1" style="text-align:right"><i style="color:green">+6,6%</i></td>
<td class="value1" style="text-align:right;border-left: dotted 1px"><i style="color:green">+2.743</i></td>
<td class="value1" style="text-align:right"><i style="color:green">+12,3%</i></td>
</tr>
Пока мой код может выйти первый погладить из <tr>
, в том числе первые 3 значений, т.е. Украина, январь-февраль 2016 и 1,18. Но, как вы можете видеть из-за ошибки на странице html, в следующем разделе нет открытого тега <tr>
, который останавливает мою программу. Есть ли способ вставить только тег <tr>
в это место, на данный момент я могу получить только BeautifulSoup, чтобы вставить открывающий и закрывающий теги вокруг тега <a>
, используя этот код.
soup = BeautifulSoup(webpage,'html.parser')
a= soup.find("a", attrs={"href":"index.php?section=consegne"})
tr = soup.new_tag('tr')
a_idx = a.parent.contents.index(a)
a.parent.insert(a_idx , tr)
Это дает мне следующее
</tr>
<td class="data1"><tr></tr><a href="index.php?section=consegne" target="blank">EU-28</a></td>
Итак, в заключение мне нужно кого-то, чтобы помочь мне двигаться лишь открытие <tr>
тег вне <td>
тега и в случае неудачи сделать только отверстие <tr>
тег и открытие <td>
бирка.
Спасибо за помощь. единственная проблема заключается в том, что, к сожалению, на странице html есть 2 таблицы с примерно 14 странами на каждом, и я не уверен, изменился ли код. Мой код работает, если я загружаю html и вставляю '
Смежные вопросы