Semalt. Վեբ գրություններ Python- ի հետ

Դուք անցել եք այն սարսափելի պահերից մեկը, երբ Wi-Fi չունեք: Եթե այդպես է, ուրեմն հասկացաք, թե ձեր համակարգչի վրա կատարածից ինչքան մեծ մասը ապավինում է ցանցին: Իրական սովորությունից դուրս կգտնեք, թե ինչպես եք ստուգում ձեր էլ. Նամակները, դիտում ձեր ընկերոջ Instagram լուսանկարները, ինչպես նաև կարդում դրանց թվիթերները:
Քանի որ այդքան համակարգչի աշխատանքը ներառում է վեբ գործընթացներ, շատ հարմար կլիներ, եթե ձեր ծրագրերը նույնպես առցանց ստանան: Սա այն դեպքն է, երբ ցանցը ջարդվում է : Այն ներառում է ծրագիր օգտագործել համացանցից բովանդակությունը ներբեռնելու և վերամշակելու համար: Օրինակ ՝ Google- ը օգտագործում է գրությունների մի շարք ծրագրեր ՝ վեբ էջերը ինդեքսավորելու համար իրենց որոնիչի համար:

Կան բազմաթիվ եղանակներ, որոնց միջոցով դուք կարող եք տվյալները ջնջել ինտերնետից: Այս մեթոդներից շատերը պահանջում են ծրագրավորման մի շարք լեզուների հրամաններ, ինչպիսիք են Python- ը և R.- ը, օրինակ ՝ Python- ի հետ, կարող եք օգտվել մի շարք մոդուլներից, ինչպիսիք են «Հայցեր», «Գեղեցիկ ապուր», «Webbrowser» և «Սելեն»:
«Հայցեր» մոդուլը հնարավորություն է տալիս ֆայլերը հեշտությամբ ներբեռնել համացանցից ՝ առանց ձեզ անհանգստանալու դժվար խնդիրների մասին, ինչպիսիք են կապի խնդիրները, ցանցի սխալները և տվյալների սեղմումը: Դա պարտադիր չէ, որ գալիս է Python- ի հետ, ուստի ստիպված կլինեք նախ այն տեղադրել:
Մոդուլը մշակվել է այն պատճառով, որ Python- ի 'urllib2' մոդուլը շատ բարդություններ ունի, ինչը դժվարացնում է դրանց օգտագործումը: Իրականում դա բավականին հեշտ է տեղադրել: Բոլոր դուք պետք է անեք `հրամանի տողից pip install- ի հայցեր առաջադրելը: Ապա դուք պետք է կատարեք մի պարզ թեստ ՝ ապահովելու համար, որ մոդուլը ճիշտ տեղադրված է: Դա անելու համար դուք կարող եք մուտքագրել «>>> ներմուծման հայցերը» ինտերակտիվ shell մեջ: Եթե սխալ հաղորդագրություններ չեն երևում, ապա տեղադրումը հաջող էր:
Էջը ներբեռնելու համար հարկավոր է նախաձեռնել 'requests.get ()' գործառույթը: Ֆունկցիան ներբեռնելու համար մի URL է տանում, այնուհետև վերադարձնում է «պատասխան» օբյեկտ: Սա պարունակում է այն պատասխանը, որը վեբ սերվերը վերադարձրել է ձեր հարցման համար: Եթե ձեր հայցը հաջողություն է ունենում, ապա ներբեռնված վեբ էջը պահվում է որպես տող ՝ պատասխան օբյեկտների տեքստի փոփոխականում:
Արձագանքման օբյեկտը սովորաբար ունի կարգավիճակի կոդային հատկանիշ, որը կարող եք օգտագործել `ձեր ներբեռնման հաջողությունը պարզելու համար: Նմանապես, պատասխանող օբյեկտի վրա կարող եք զանգահարել raise Բարձրացնել_որ_սթաուս () մեթոդը: Սա բացառություն է առաջացնում, եթե ֆայլը ներբեռնելու որևէ սխալ տեղի է ունեցել: Դա հիանալի միջոց է համոզվելու, որ ծրագիրը դադարում է վատ ներբեռնման դեպքում:

Այստեղից դուք կարող եք ներբեռնել ձեր վեբ ֆայլը ձեր կոշտ սկավառակի վրա ՝ օգտագործելով ստանդարտ գործառույթները ՝ «բաց ()» և «գրել ()»: Այնուամենայնիվ, տեքստի Unicode կոդավորումը պահպանելու համար հարկավոր է տեքստի տվյալները փոխարինել երկուական տվյալներով:
Տվյալները ֆայլը գրելու համար կարող եք օգտագործել 'for' օղակը 'iter_content () մեթոդով: Այս մեթոդը հանգույցի միջոցով վերադարձնում է յուրաքանչյուր կրկնության վերաբերյալ տվյալների մեծ մասը: Յուրաքանչյուր մեծ մասը բայթ է, և դուք պետք է նշեք, թե յուրաքանչյուր բյուր քանակի քանի բայթ է պարունակելու: Գրելու ավարտից հետո զանգահարեք 'փակել ()', որպեսզի փակեք ֆայլը, և ձեր գործն ավարտված է: