Semalt: Python менен Веб Скрапинг

Wi-Fi жок учурда сиз ошол коркунучтуу учурлардын бирин баштан өткөрдүңүз беле? Эгер ошондой болсо, анда компьютерде жасаган нерселериңиздин көбү тармакка таянарын түшүнүп алдыңыз. Адатта, электрондук почтаңызды текшерип, досуңуздун Инстаграмдагы сүрөттөрүн көрүп, алардын твиттерин окуй аласыз.

Компьютерде иштөө ушунчалык көп желе процесстерин камтыгандыктан, программаларыңыз онлайн режиминде иштесе, абдан ыңгайлуу болмок. Бул желе кыргыч үчүн . Бул желедеги мазмунду жүктөө жана иштетүү үчүн программаны колдонууну камтыйт. Мисалы, Google веб-баракчаларды издөө системасы үчүн индекстөө үчүн ар кандай кыргыч программаларын колдонот.

Интернеттен маалыматты кырып салуунун көптөгөн жолдору бар. Бул ыкмалардын көпчүлүгү Python жана R. сыяктуу программалоо тилдеринин көптөгөн командаларын талап кылат. Мисалы, Python менен сиз Requests, Beautiful шорпо, Webbrowser жана Selenium сыяктуу бир катар модулдарды колдонсоңуз болот.

"Сурамдар" модулу туташуу, тармактык каталар жана маалыматты кысуу сыяктуу татаал маселелерден кабатыр болбостон, Интернеттен файлдарды оңой жүктөп алуу мүмкүнчүлүгүн берет. Бул сөзсүз эле Python менен кошо келбейт, андыктан аны алгач орнотушуңуз керек болот.

Модул иштелип чыккан, себеби Python'дун 'urllib2' модулу көптөгөн татаалдыктарга ээ, аны колдонууну кыйындатат. Орнотуу чынында эле оңой. Сизге буйрук тилкесинен пип орнотуу сурамдарын аткаруу керек. Андан кийин модулдун туура орнотулгандыгын текшерүү үчүн жөнөкөй текшерүү жасашыңыз керек. Ал үчүн, сиз интерактивдүү кабыкка '>>> импорттоо сурамдарын' терсеңиз болот. Эгер ката жөнүндө билдирүүлөр чыкпаса, анда орнотуу ийгиликтүү болду.

Баракты жүктөө үчүн, сиз 'request.get ()' функциясын башташыңыз керек. Функция жүктөп алуу үчүн URL'дин сабын алып, андан соң 'хариу' объектисин кайтарат. Бул сурамыңызга кайтарылган веб-сервердин жоопторун камтыйт. Эгер сурамыңыз ишке ашса, анда жүктөлгөн веб-баракча жооп объектилеринин тексттик өзгөрмөсүндө сап катары сакталат.

Жооп кайтаруу объектисинде, адатта, жүктөө ийгиликтүү болгонун билүү үчүн колдонсоңуз боло турган статус кодунун атрибуту бар. Ошол сыяктуу эле, жооп объектисинде 'yuks_for_status ()' методун чакырсаңыз болот. Бул файлды жүктөөдө кандайдыр бир ката кетсе, өзгөчө кырдаал келип чыгат. Бул начар жүктөлгөндө, программанын токтоп калгандыгын текшерүүнүн мыкты жолу.

Ушул жерден, жүктөлгөн веб-файлыңызды катуу дискте, "open ()" жана "write ()" функцияларын колдонуп сактай аласыз. Бирок, тексттин Юникод коддолушун сактап калуу үчүн, тексттик маалыматты экилик маалыматтар менен алмаштырышыңыз керек.

Маалыматтарды файлга жазуу үчүн 'iter_content ()' ыкмасы менен 'for' циклин колдонсоңуз болот. Бул ыкма цикл аркылуу ар бир итерация боюнча маалыматтардын көпчүлүгүн кайтарып берет. Ар бир дүң байт менен берилген, ошондуктан ар бир дебетте канча байт камтылышы керек. Сиз жазып бүткөндөн кийин, файлды жабуу үчүн 'close ()' чакырыңыз, ошондо сиздин жумушуңуз бүттү.

mass gmail