Преглед на Semalt: Web Scraping за забава и заработка

Можете да направите веб-страници без потреба од API. Додека сопствениците на страници се агресивни за да престанат со стружење, тие помалку се грижат за API и наместо тоа, ставаат поголем акцент на веб-страниците. Фактите дека многу страници не ги штитат соодветно од автоматскиот пристап, создаваат автопат за стругалки. Неколку едноставни решенија за работа ќе ви помогнат да ги соберете потребните податоци.

Започнување со стружење

Откривањето бара разбирање на структурата на податоците што ви се потребни и неговата пристапност. Ова започнува со преземање на вашите податоци. Најдете ја URL-то што ги враќа потребните информации. Прелистајте преку веб-страницата и проверете како URL-то се менуваат додека се движите низ различни делови.

Алтернативно, пребарувајте неколку поими на страницата и проверете како URL-то се менуваат врз основа на терминот за пребарување. Треба да видите GET параметар како q = што се менува секогаш кога пребарувате нов термин. Задржете ги GET параметрите потребни за вчитување на вашите податоци и отстранете ги другите.

Како да се справите со забавување

Pagination ве спречува да пристапите до сите податоци што ви требаат одеднаш. Кога ќе кликнете на страницата 2, параметар = offset = се додава на URL-то. Ова е или бројот на елементи на една страница или бројот на страницата. Зголемете го овој број на секоја страница од вашите податоци.

За страниците што користат AJAX, повлечете го мрежното копче во Firebug или Inspector. Проверете ги барањата XHR, идентификувајте и фокусирајте се на оние што ги влеваат вашите податоци.

Добијте податоци од обележување страници

Ова се постигнува со помош на куки за CSS. Кликнете со десното копче на одреден дел од вашите податоци. Повлечете ја Firebug-от или инспекторот и зумирајте го дрвото ДОМ за да добиете најголема <div> што завитка еден предмет. Откако ќе го имате точниот јазол од дрвото ДОМ, погледнете го изворот на страницата за да се осигурате дека вашите елементи се достапни во сурови HTML.

За успешно откривање на страницата, потребна ви е библиотека за парсирање на HTML, која се чита во HTML и ја претвора во предмет што можете да го итерате сè додека не го добиете она што ви треба. Ако вашата библиотека за HTTP бара да поставите некои колачиња или заглавија, прелистајте ја страницата на вашиот веб-прелистувач и заведете ги заглавјата да бидат испратени од вашиот прелистувач. Ставете ги во речник и проследете го со вашето барање.

Кога ви е потребна најава за гребење

Ако мора да создадете сметка и да се најавите за да ги добиете саканите податоци, треба да имате добра HTTP библиотека за да се справувате со најавите. Најавување за гребење ве изложува на страници од трети страни.

Ако ограничувањето на стапката на вашата веб-услуга зависи од IP адресата, поставете код што ја погодува веб-услугата на Javascript-страницата на клиентот. Потоа, резултатите вратете ги на вашиот сервер од секој клиент. Резултатите се чини дека потекнуваат од толку многу места и ниту еден нема да го надмине нивниот лимит.

Слабо формирана маркап

Некои ознаки можат да бидат тешки за валидација. Во такви случаи, ископајте во вашиот HTML парсер за поставките за толеранција на грешки. Алтернативно, третирајте го целиот HTML документ како долга низа и направете разделување на жици.

Додека можете да веб-страници ги испуштите сите видови на податоци на мрежата, некои страници користат софтвер за да престанат со стружење, а други забрануваат блокирање на веб-страници . Ваквите страници можат да ве тужат, па дури и да ве затвораат за собирање на нивните податоци. Затоа, бидете паметни во сите ваши веб-стружења и направете го тоа безбедно.

mass gmail