Semalt сарапшысы: Python және BeautifulSoup. Қарапайым сайттар

Мәліметтерді талдау немесе машинамен оқыту жобаларын орындау кезінде сізге қажет деректерді алу және жобаңызды аяқтау үшін веб-сайттарды қырып тастау қажет болуы мүмкін. Python бағдарламалау тілінде осы мақсатта қолдануға болатын құралдар мен модульдердің қуатты жиынтығы бар. Мысалы, сіз HTML талдауы үшін BeautifulSoup модулін қолдана аласыз.
Мұнда біз BeautifulSoup-ді қарастырып, оны веб-скрепингте не үшін кеңінен қолданылатындығын білеміз.
BeautifulSoup мүмкіндіктері
- Ол оңай навигациялаудың, талдау жасайтын ағаштарды іздеудің және өзгертудің әртүрлі әдістерін ұсынады, осылайша сізге құжаттың көп жиналуынсыз оңай бөлуге және қажеттінің барлығын алуға мүмкіндік береді.
- UTF-8 шығыс құжаттарын және кіріс құжаттарды Юникодқа автоматты түрде түрлендіреді. Бұл құжат кодтауды көрсеткен немесе әдемі сорпа оны автоматты түрде анықтай алатын жағдайда кодтау туралы алаңдамайсыз.
- BeautifulSoup html5lib және lxml сияқты әйгілі Python талдаушыларынан жоғары саналады. Бұл әр түрлі талдау стратегияларын қолдануға мүмкіндік береді. Бұл модульдің бір кемшілігі, ол жылдамдықтың әсерінен икемділікті қамтамасыз етеді.
BeautifulSoup көмегімен сайтты жоятын не қажет?
BeautifulSoup-пен жұмыс істеу үшін компьютерде Python бағдарламалау ортасы (жергілікті немесе серверлік) болуы керек. Python әдетте OS X-де алдын-ала орнатылған, бірақ егер сіз Windows-ті қолдансаңыз, тілді ресми веб-сайттан жүктеп, орнатуыңыз керек.

Сізде BeautifulSoup және Requests модульдері болуы керек.
Ақырында, HTML тегтерімен және құрылымымен таныс және ыңғайлы болу сөзсіз пайдалы, өйткені сіз веб-деректермен жұмыс жасайсыз.
Сұранымдар мен BeautifulSoup кітапханаларын импорттау
Python бағдарламалау ортасы жақсы орнатылған, енді сіз кез-келген атаумен жаңа файлды жасай аласыз (мысалы, нано көмегімен).
Сұраныстар кітапханасы сізге Python бағдарламаларында адам оқи алатын HTTP пішінін қолдануға мүмкіндік береді, ал BeautifulSoup қырқуды тезірек жүргізеді. Екі кітапхананы алу үшін сіз импорт мәлімдемесін қолдана аласыз.
Веб-бетті қалай жинауға және талдауға болады
Сіз деректерді алғыңыз келетін веб-беттің URL-мекенжайын жинау үшін request.get () әдісін қолданыңыз. Әрі қарай, BeautifulSoup нысанын немесе талдау жасаңыз. Бұл объект сұраныстардан құжатты өзінің дәлелдері ретінде алады, содан кейін оны талдайды. BeautifulSoup нысаны ретінде жинақталған, талданған және орнатылатын парақтың көмегімен сіз қажетті мәліметтерді жинауға кірісе аласыз.
Талдаған веб-парақтан қажетті мәтінді шығару
Веб-деректерді қалай жинағыңыз келсе, сол веб-беттің Document Object Model (DOM) арқылы қалай сипатталғанын білуіңіз керек. Веб-шолғышта қызығушылық туралы мәліметтердің бір бөлігін құрайтын элементтердің біреуін тінтуірдің оң жақ түймешігімен нұқыңыз (егер Windows қолданылса) немесе CTRL + нұқыңыз (егер MacOS қолдансаңыз). Мысалы, егер сіз студенттердің ұлты туралы мәлімет алғыңыз келсе, студенттің атын таңдаңыз. Контекстік мәзір пайда болады және оның ішінде Элементті тексеру (Firefox үшін) немесе Тексеру (Chrome үшін) сияқты мәзір элементін көресіз. Тексеру мәзірінің тиісті тармағын нұқыңыз, сонда веб-әзірлеуші құралдары сіздің шолғышыңызда пайда болады.
BeautifulSoup - бұл қарапайым, бірақ қуатты HTML талдау құралы, бұл веб-сайттарды қырқу кезінде үлкен икемділікке мүмкіндік береді. Оны пайдалану кезінде скрепингтің жалпы ережелерін сақтауды ұмытпаңыз, мысалы, веб-сайттың шарттары мен шарттарын тексеру; сайтқа үнемі кіріп отыру және сайтта енгізілген өзгерістерге сәйкес кодты жаңарту. Python және BeautifulSoup көмегімен веб-сайттарды сыпыру туралы осы білімге ие бола отырып, енді өз жобаңызға қажет веб-деректерді оңай алуға болады.