Преглед на Semalt: Изстъргване на уеб за забавление и печалба

Можете да остъргвате сайта без да имате нужда от API. Въпреки че собствениците на сайтове са агресивни относно спирането на бракуването, те се грижат по-малко за API-тата и вместо това поставят повече акцент върху уебсайтовете. Фактите, че много сайтове не предпазват по подходящ начин от автоматичен достъп, създават свобода за скрепери. Някои прости решения ще ви помогнат да съберете необходимите данни.

Първи стъпки с изстъргване

Изстъргването изисква разбиране на структурата на необходимите ви данни и тяхната достъпност. Това започва с извличане на вашите данни. Намерете URL адреса, който връща нужната ви информация. Прегледайте уебсайта и проверете как се променят URL адресите, докато навигирате в различни секции.

Освен това, потърсете няколко термина в сайта и проверете как се променят URL адресите въз основа на думата ви за търсене. Трябва да видите параметър GET като q =, който се променя всеки път, когато търсите нов термин. Запазете GET параметрите, необходими за зареждане на вашите данни и премахнете останалите.

Как да се справим с пагинацията

Странирането ви предпазва от достъп до всички необходими данни наведнъж. Когато щракнете върху страница 2, към URL адреса се добавя параметър offset =. Това е или броят елементи на дадена страница, или номерът на страницата. Увеличете този номер на всяка страница от вашите данни.

За сайтове, които използват AJAX, издърпайте раздела за мрежа в Firebug или Inspector. Проверете заявките за XHR, идентифицирайте и се съсредоточете върху тези, които привличат вашите данни.

Получаване на данни от маркиране на страница

Това се постига с помощта на CSS куки. Щракнете с десния бутон върху определен раздел от вашите данни. Издърпайте Firebug или Inspector и преместете мащаба през DOM дървото, за да получите най-голямата <div>, която увива един елемент. След като имате правилния възел от DOM дърво, прегледайте източника на страницата, за да се уверите, че вашите елементи са достъпни в суров HTML код.

За да изтриете успешно сайта, се нуждаете от библиотека за анализ на HTML, която чете в HTML и го превръща в обект, който можете да повторите, докато получите това, което ви е необходимо. Ако вашата HTTP библиотека изисква да зададете някои бисквитки или заглавки, прегледайте сайта в уеб браузъра си и получете заглавките, изпратени от вашия браузър. Поставете ги в речник и препратете със заявката си.

Когато имате нужда от вход в Scrape

Ако трябва да създадете акаунт и да влезете, за да получите желаните от вас данни, трябва да имате добра HTTP библиотека, която да обработва влизания. Входът за скрепер ви излага на сайтове на трети страни.

Ако ограничението на скоростта на вашата уеб услуга зависи от IP адреса, задайте код, който връща уеб услугата към Javascript от страна на клиента. След това препратете резултатите обратно на вашия сървър от всеки клиент. Изглежда, че резултатите произхождат от толкова много места и нито едно няма да надвиши ограничението им.

Лошо формирана маркировка

Някои маркировки могат да бъдат трудни за проверка. В такива случаи, копайте във вашия HTML анализатор за настройки на поносимост на грешки. Като алтернатива, третирайте целия HTML документ като дълъг низ и направете разделяне на низ.

Въпреки че можете да сайтът да изстържете всички видове данни в мрежата, някои сайтове използват софтуер за спиране на бракуване , а други забраняват уеб скрап . Такива сайтове могат да ви съдят и дори да ви затворят за събиране на техните данни. Така че бъдете интелигентни във всичките си уебсайтове и го правете безопасно.