Home / Uncategorized / Robotukai: strukturizuoti duomenys

Robotukai: strukturizuoti duomenys

1
Pagrindai
2
Rezultatai
3
Struktūros
4
Pratimas
5
Uždirbk €€€

Šiame žingsnyje turėsime praktinę užduotį (užduoties nr. 2), kur reikės papildomai sutvarkyti gautus duomenis prieš siunčiant į platformą.

Šį kartą norime gauti ne tik antraščių sąrašą, bet kartu ir datas kada jos paskelbtos. Tad norime gauti sąrašą struktūrizuotų elementų pagal tokią schemą:

[
  {'published': '2022-05-22', 'title': 'Pirma antraštė'},
  {'published': '2022-06-22', 'title': 'Antra antraštė'},
  ...
]

Pernaudosime kodo dalį iš pareito pratimo. Pirmiausia modifikuosime regexp, kad būtų nuskaityti ir URL. Tuo tikslu tą regexpį dalį turime apskliausti

r = re.compile('<h2 class="entry-title"><a href="(.*)>(.*)</a></h2>')

Toks regexp gražins sąrašą porų, kurių pirmas elementas bus URL ( http://blog.citynow.org/2022/06/22/nemunas-by-citus/ ), kitas – įrašo pavadinimas. Pastebime kad paskelbimo datą galime rasti URL, tiesiog reikia suskaidyti URL pagal “/” simbolį ir ištrinti pradžią.

results_dicts = []
for url, title in results:
  suffix = url.replace('http://blog.citynow.org/', '') 
  parts = suffix.split('/')  
  published = parts[0] + '-' + parts[1] + '-' + parts[2]
  results_dicts.append({
    'published': published,
    'title': title,
  })

print results_dicts

Toks kodas išspaudintų struktūrizuotus duomenis reikiamu formatu:

[
  {
    'published': '2022-07-09', 
    'title': 'Populiariausi prop-tech sprendimai',
  }, 
  {
    'published': '2022-07-01',
    'title': '2022 birželio rinkos apžvalga',
   }, 
   ...
]

Pakeičiame užduoties nr, ir patikriname galutinį rezultatą.

Kitas žingsnis

Sėkmingai sukūrėme robotuką, kuris nuskaito duomenis ir papildomai apdoroja juos sudėliojant į reikiamą struktūrą. Paskutiniame žingsnyje jūsų laukia pratimas, kurį savarankiškai įgyvendinę galėsite rinktis apmokamas užduotis. Pereitį į kitą žingsnį.

Leave a Reply

Your email address will not be published. Required fields are marked *