Cheerio: сохранить разрывы строк - PullRequest
0 голосов
/ 24 января 2019

<td align="center"><font face="Verdana"><font size=2><b> 3792&nbsp;R</b><br><font size=1>tp WHR3</font><br></font><font size=1><a href="http://www.lyngsat-maps.com/footprints/NSS-9-West-hemi.html">West hemi</a><br>39-40</font></td>

Хочу получить

  1. 3792 R
  2. тп WHR3
  3. Западный полушарий
  4. 39-40

код приветствия ->

$('td', td).text()

получить текст [ 3792 Rtp WHR3West hemi39-40 ]

1 Ответ

0 голосов
/ 24 января 2019

Вы можете настроить таргетинг на определенные элементы внутри вашего <td>, используя селекторы CSS:

const value1 = $('td font[face=Verdana] font[size=2] b').text() // 3792 R
const value2 =  $('td font[face=Verdana] font[size=2] font[size=1]').text() // tp WHR3
const value3 = $('td > font[size=1] a').text() // West hemi
const value4 = $('td > font[size=1]').text().substring(value3.length - 1) // 39-40

Последнее значение, которое вам нужно было найти, не содержалось внутри определенного элемента, поэтому я получил значение родительского элемента, котороесодержит value3 и value4 и, вычтенное значение value3, так что осталось value4

...