Мазмунга өтүү

Cheerio менен веб-скрапер куруу

Сабактын башталышы

Cheerio менен веб-скрапер куруу

Веб-баракты жүктөп, jQuery сыяктуу селекторлор менен керектүү маалыматты сууруп алып, аны JSON же маалымат базасына сактаңыз.

Негизги идея: Веб-скрапер баракчанын чийки HTML кодун жүктөп, аны суроо-талап жасалуучу документ катары иштетет. Cheerio ошол HTML'ди даракка ажыратып, jQuery'ден тааныш болгон $('selector') API'син берет, бирок серверде жана браузерсиз. Сиз элементтерди көрсөтүп, алардын текстин жана атрибуттарын окуп, тартипсиз баракты таза структураланган жазууларга айландырасыз.
Аягында сиз булардын аракетин жасай аласыз:
  • жүктөө -> ажыратуу -> тандоо -> сууруп алуу -> сактоо конвейерин түшүндүрүү;
  • HTML'ди Cheerio'го жүктөп, аны CSS-селекторлор менен суроо;
  • кайталануучу элементтерди айланып, жазуулар массивин чогултуу;
  • текстти, атрибуттарды жана ичине киргизилген түйүндөрдү таза окуу;
  • натыйжаларды JSON-файлга же маалымат базасынын таблицасына сактоо;
  • сылык скрапинг жасоо -- robots.txt'ти, ылдамдык чектөөлөрүн жана каталарды сыйлоо;
  • чыныгы API скрапингден качан жакшы экенин чечүү.

1. Скрапинг деген эмне жана эмне үчүн Cheerio?

Ар бир вебсайт ыңгайлуу JSON API сунуштай бербейт. Кээде баа, аталыш же товардын мүнөздөмөсү жашаган жалгыз жер -- бул браузер көрсөткөн HTML. Скрапинг -- ошол HTML'ди жүктөп, пайдалуу бөлүктөрдү программалык жол менен сууруп алуу практикасы.

Мурунку Үчүнчү тараптын API'лерин колдонуу темасында сиз эндпоинттен JSON жүктөгөнсүз -- маалымат мурунтан эле структураланган түрдө келген. Скрапинг -- ага туугандаш көндүм: маалымат адамдын көзү үчүн курулган документ түрүндө келет, ал эми сиздин милдетиңиз -- ага структура киргизүү. Жүктөө ошол эле, бирок ажыратуу таптакыр башка.

Cheerio -- бул HTML'ди түйүндөр дарагына ажыратып, jQuery менен шайкеш API берген тез, жетилген китепкана. Ал JavaScript'ти аткарбайт, сүрөттөрдү жүктөбөйт жана эч нерсе тартпайт -- бул жөн гана парсер плюс селекторлор. Ошон үчүн ал Puppeteer сыяктуу толук headless-браузер менен салыштырганда кичинекей жана тез. Эгер сизге керектүү маалымат сервер жиберген чийки HTML'де бар болсо, Cheerio туура курал. Эгер баракча жүктөлгөндөн кийин мазмунун кардар тараптагы JavaScript менен курса, анда браузерге негизделген курал керек болот (бул тууралуу кийинчерээк).

Салыштыруу. HTML баракты басма гезит катары элестетиңиз. Браузер -- жайгаштырылган беттерди көргөн окурман. Cheerio -- кайчы жана көрсөткүч: ал "спорт бөлүмүндөгү ар бир аталышка" түз өтүп, аларды кыркып алууга мүмкүндүк берет, ал эми сизге керексиз жарнак менен жайгаштырууну тоготпойт.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө