Pull to refresh

Использование Grab:Spider для парсинга сайтов

Python *
Всем привет!

Я активный пользователь open-source фрэймворка Grab (itforge уже писал о нем здесь и здесь) и 1/2 проекта GrabLab (который занимается собственно коммерческой эксплуатацией фрэймворка). Т.к. парсим сайты мы часто, помногу и задания как правило совершенно не похожи друг на друга, хотелось бы поделится своим опытом в вопросе построения типичного парсинг проекта.

Немного про инструментарий который помогает мне в работе

В качестве рабочего браузера я использую FireFox с плагинами HttpFox (анализировать входящий/исходящий http трафик), XPather (позволяет проверять xpath выражения), SQLite Manager (просмотр sqlite таблиц), код набираю в emacs, где активно использую сниппеты (YASnippets) для часто встречающихся конструкций.

Из-за специфики фрэймворка, как правило, на первом этапе сайт полностью (или если данных много — то частично, для удобства последующей разработки) сохраняется в локальный кэш на базе mongodb, что очень экономит время, т.к. считывание страниц идет из кэша.

Читать дальше →
Total votes 37: ↑34 and ↓3 +31
Views 19K
Comments 17

Что такое Grab:Spider?

Python *
Никак не могу дописать документацию по Grab:Spider — это часть библиотеки Grab — для написания асинхронных пауков. Подумал выкладывать куски документации на хабрахабр. Думаю, с некоторым фидбэком дело быстрей пойдёт. На данный момент в документации есть лишь введение, описывающие в общих чертах, что за это за зверь такой Grab:Spider. Его и выкладываю.
Читать дальше →
Total votes 37: ↑32 and ↓5 +27
Views 15K
Comments 43

Grab — новый интерфейс для работы с DOM-деревом HTML-документа

Python *Data Mining *

Исторический экскурс


Ранее я уже писал на хабре о Grab — фреймворке для написания парсеров сайтов: раз, два, три, четыре. В двух словах, Grab это удобная оболочка поверх двух библиотек: pycurl для работы с сетью и lxml для разбора HTML-документов.
Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Views 36K
Comments 26

Простой парсинг сайтов с помощью SlimerJS

JavaScript *
Sandbox
В виду отсутствия хорошего материала по парсингу с помощью скриптового браузера SlimerJS и наличия свободного времени решил написать небольшую статью.


Читать дальше →
Total votes 47: ↑41 and ↓6 +35
Views 68K
Comments 15

Веб-парсинг на Ruby

Ruby *Programming *
Tutorial
Sandbox
image
Это перевод статьи «Web Scraping with Ruby», которую я нашел полезной при изучении языка программирования Ruby. Парсинг меня интересует в личных целях. Мне кажется, это не только полезный навык, но и хороший способ изучить язык.
Читать дальше →
Total votes 13: ↑11 and ↓2 +9
Views 64K
Comments 33

Продвинутый парсинг веб-сайтов с Mechanize

Ruby *Programming *
Tutorial
Translation
В продолжение темы парсинга сайтов на Ruby, я решил перевести следующую статью этого же автора.

В предыдущей записи я описал основы — введение в веб парсинг на Ruby. В конце поста, я упомянул инструмент Mechanize, который используется для продвинутого парсинга.

Данная статья объясняет как делать продвинутый парсинг веб-сайтов с использованием Mechanize, который, в свою очередь, позволяет делать отличную обработку HTML, работая над Nokogiri.
Читать дальше →
Total votes 7: ↑5 and ↓2 +3
Views 30K
Comments 3

Не так страшен черт, или сколько же реально используемых доменов

Domain names administrating *
Sandbox
Понадобилось мне собрать определенного рода статистику по вебу. Но поисковики даже приблизительно не захотели выдавать стату, какими только запросами я их ни кормил. В итоге, по исконно русской традиции, принялся писать свой «поисковик». Итак, начнем.

Первое, что нам необходимо — список всех зарегистрированных доменов.
Читать дальше →
Total votes 29: ↑23 and ↓6 +17
Views 5.7K
Comments 24

Пример использования Product API от Fetchee для парсинга товаров интернет-магазина

Fetchee corporate blog Data Mining *API *
Tutorial
image

В этой инструкции мы расскажем о том, как с помощью Fetchee Product API получить данные о товаре по URL на примере интернет-магазина lamoda.

Для тех, кто не читал нашу прошлую заметку — Product API будет полезен разработчикам, которым требуется получать данные о товарах из любого магазина, но которые не хотят тратить время на создание собственной системы парсинга или уже осознали, что open-source библиотеки обладают существенными ограничениями и требуют много времени на поддержку. Наш автоматический и не требующий настройки API для парсинга eCommerce данных даёт возможность сосредоточится на разработке основных функций вашего приложения. К тому же попробовать его очень просто. Детали под катом.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 18K
Comments 42

Парсим weblancer используя PROXY

Python *

Цель работы


  1. Парсим сайт, используя прокси-сервера.
  2. Сохраняем данные в формате CSV.
  3. Пишем поисковик по найденным данным.
  4. Строим интерфейс.




Использовать будем язык программирования Python. Сайт, с которого мы будем качать данные — www.weblancer.net (парсинг старой версии этого сайта был размещен здесь), в нем есть предложения работы по адресу www.weblancer.net/jobs. С него мы и будем получать данные — это название, цена, количество заявок, категория, краткое описание предлагаемой работы.

Вход с использованием прокси означает — вход на сайт под ненастоящим адресом. Пригодится для парсинга сайта с защитой бана по IP адресу (то есть, если вы слишком часто, за короткий отрезок времени, входите на сайт).
Читать дальше →
Total votes 28: ↑15 and ↓13 +2
Views 20K
Comments 8

10 инструментов, позволяющих парсить информацию с веб-сайтов, включая цены конкурентов + правовая оценка для России

Self Promo
image

Инструменты web scraping (парсинг) разработаны для извлечения, сбора любой открытой информации с веб-сайтов. Эти ресурсы нужны тогда, когда необходимо быстро получить и сохранить в структурированном виде любые данные из интернета. Парсинг сайтов – это новый метод ввода данных, который не требует повторного ввода или копипастинга.

Такого рода программное обеспечение ищет информацию под контролем пользователя или автоматически, выбирая новые или обновленные данные и сохраняя их в таком виде, чтобы у пользователя был к ним быстрый доступ. Например, используя парсинг можно собрать информацию о продуктах и их стоимости на сайте Amazon. Ниже рассмотрим варианты использования веб-инструментов извлечения данных и десятку лучших сервисов, которые помогут собрать информацию, без необходимости написания специальных программных кодов. Инструменты парсинга могут применяться с разными целями и в различных сценариях, рассмотрим наиболее распространенные случаи использования, которые могут вам пригодиться. И дадим правовую оценку парсинга в России.
Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Views 340K
Comments 45

Парсинг сайтов: как с точки зрения закона выглядит один из самых полезных ИТ- инструментов по миру (и в России)?

Self Promo
image

Попробуем рассмотреть один из лучших способов сбора информации в интернете – парсинг – с юридической точки зрения. Внимание! Эта публикация касается некоторых обще-правовых вопросов, связанных с парсингом, но не является юридической консультацией. Статья является продолжением публикации "10 инструментов, позволяющих парсить информацию с веб-сайтов, включая цены конкурентов + правовая оценка для России"

Парсинг – это автоматизированный процесс извлечения данных с чужого веб-сайта. Но стоит разобраться, действительно ли это один из самых полезных инструментов ИТ для сбора данных или ловушка, влекущая неизбежные проблемы с законом? Парсинг мог бы непременно стать одним из совершеннейших способов добычи контента по всей сети, но к нему прилагается оговорка: с этим инструментом очень сложно разобраться с юридической стороны. Парсинг – это процесс, посредством которого автоматизированная часть программного обеспечения извлекает данные веб-сайта, «прочесывая» многочисленные страницы. Поисковые системы как Google и Bing делают нечто подобное, когда индексируют веб-страницы, а парсинговые механизмы идут дальше и преобразовывают информацию в формат, который позволяет этими данными пользоваться, заносить в базы или электронные таблицы.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 45K
Comments 24

Как я парсил Хабр, часть 1: тренды

Python *Data visualization *Research and forecasts in IT *Web analytics *

Когда был доеден новогодний оливье, мне стало нечего делать, и я решил скачать себе на компьютер все статьи с Хабрахабра (и смежных платформ) и поисследовать.


Получилось несколько интересных сюжетов. Первый из них — это развитие формата и тематики статей за 12 лет существования сайта. Например, достаточно показательна динамика некоторых тем. Продолжение — под катом.


Читать дальше →
Total votes 62: ↑62 and ↓0 +62
Views 22K
Comments 45

Парсинг telegram каналов для агрегатора контента на PHP

PHP *Start-up development
Tutorial
Recovery mode
Sandbox
Привет, Хабр!

Несколько лет назад я начал разрабатывать свой агрегатор контента, что бы упростить свой серфинг в сети. Изначально я парсил только rss, vk и facebook, но в прошлом году решил сделать полный рефакторинг проекта: отказаться от парсинга на клиенте, сделать нормальный back-end, использовать базу данных для хранения данных и расширить список поддерживаемых ресурсов.

Помимо стандартного набора из rss, fb, vk, twitter, instagram, youtube я добавил поддержку произвольных открытых каналов из telegram.

image

Под катом пошаговая инструкция, как парсить любые каналы в telegram без регистрации и смс.
Читать дальше →
Total votes 21: ↑14 and ↓7 +7
Views 72K
Comments 26

Правда про парсинг сайтов, или «все интернет-магазины делают это»

Web analytics *Internet marketing *E-commerce management *Content-marketing *
В этой статье я постараюсь наиболее просто рассказать о парсинге сайтов и его основных нюансах. Моя компания занимается парсингом сайтов уже более трёх лет и ежедневно мы парсим около 300 сайтов. Я обычно открыто пишу об этом в соц.сетях (плюс мы много чего из итогов парсинга крупнейших магазинов России выкладываем бесплатно — публично), что вызывает бурные обсуждения и неодобрение со стороны пользователей. Забавно после прочтения комментариев заглядывать к себе в личку и читать сообщения с предложениями о сотрудничестве от тех же людей, кто только что осуждал нас в комментариях под постом :) Вся статья будет в формате наиболее часто задаваемых вопросов и честных ответов (материал маркетинговый, не технический).
Читать дальше →
Total votes 126: ↑110 and ↓16 +94
Views 108K
Comments 409

Парсинг сайтов — а это вообще легально в России?

Internet marketing *E-commerce management *Content-marketing *Legislation in IT
По одному из определений парсинг есть синтаксический анализ информации. Человеку, не вовлечённому в конкретные задачи сбора и обработки информации для Интернет-проектов, это не говорит ни о чём. Да и само определение лишь в общих чертах обозначает огромный объём работы, которую ежеминутно совершают сотни миллионов людей и десятки миллионов роботов (хоть и виртуальных, но от этого ничуть не менее настоящих) по всему миру. А ведь эта задачка обычное для человека дело — что в сравнении цен на билеты онлайн, что в выборе подходящей электроники на сайтах магазинов… Следя за ценами и акциями в удобном мобильном приложении ближайшего к дому гипермаркета, никто из нас и не подумает окрестить себя парсером.
image
Читать дальше →
Total votes 30: ↑23 and ↓7 +16
Views 19K
Comments 21

Gorp.NET – новая библиотека для создания реверсивных шаблонов с целью извлечения данных из структурированного текста

Java *.NET *Data Mining *Regular expressions *API *
Gorp.NET – новая библиотека для создания реверсивных шаблонов с целью извлечения данных из структурированного текста, основанная на имеющейся кодовой базе Salesforce Gorp.
Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 2.9K
Comments 8

Большой туториал по обработке спортивных данных на python

Python *
Tutorial
Sandbox


Последние пару лет в свободное время занимаюсь триатлоном. Этот вид спорта очень популярен во многих странах мира, в особенности в США, Австралии и Европе. В настоящее время набирает стремительную популярность в России и странах СНГ. Речь идет о вовлечении любителей, не профессионалов. В отличие от просто плавания в бассейне, катания на велосипеде и пробежек по утрам, триатлон подразумевает участие в соревнованиях и системной подготовке к ним, даже не будучи профессионалом. Наверняка среди ваших знакомых уже есть по крайней мере один “железный человек” или тот, кто планирует им стать. Массовость, разнообразие дистанций и условий, три вида спорта в одном – все это располагает к образованию большого количества данных. Каждый год в мире проходит несколько сотен соревнований по триатлону, в которых участвует несколько сотен тысяч желающих. Соревнования проводятся силами нескольких организаторов. Каждый из них, естественно, публикует результаты у себя. Но для спортсменов из России и некоторых стран СНГ, команда tristats.ru собирает все результаты в одном месте – на своем одноименном сайте. Это делает очень удобным поиск результатов, как своих, так и своих друзей и соперников, или даже своих кумиров. Но для меня это дало еще и возможность сделать анализ большого количества результатов программно. Результаты опубликиваны на трилайфе: почитать.

Это был мой первый проект подобного рода, потому как лишь недавно я начал заниматься анализом данных в принципе, а также использовать python. Поэтому хочу рассказать вам о техническом исполнении этой работы, тем более что в процессе то и дело всплывали различные нюансы, требующие иногда особого подхода. Здесь будет про скраппинг, парсинг, приведение типов и форматов, восстановление неполных данных, формирование репрезентативной выборки, визуализацию, векторизацию и даже параллельные вычисления.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 10K
Comments 6

Топ 10 лучших сервисов для мониторинга цен конкурентов

Development for e-commerce *Internet marketing *Cloud services *
Sandbox
За последнее время сервисы мониторинга цен стали особенно востребованы среди как малых, так и крупных торговых брендов, существующих на рынке. Парсинг цен играет важную роль в формировании ценовой стратегии бренда, с помощью которой фирмы стремятся увеличить свой доход. В данной статье я хочу сделать обзор наиболее популярных сервисов, которые помогают решать проблему мониторинга цен конкурентов.
Читать дальше →
Total votes 12: ↑8 and ↓4 +4
Views 3.6K
Comments 1

Что и кому должен продуктовый аналитик?

Studying in IT IT career

Часть 1



Последние несколько месяцев я проходила квест под названием «уволиться с позиции маркетингового аналитика в FMCG и получить оффер на позицию продуктового аналитика в IT». Хочу поделиться опытом и систематизировать информацию, собранную за это время из разных источников. А для того, чтобы не быть голословной, рассказывая, о том, какими навыками должен обладать продуктовый аналитик, начну с обзора открытой информации о требованиях к соискателям в вакансиях hh.ru.
Читать дальше →
Total votes 8: ↑6 and ↓2 +4
Views 5.1K
Comments 4
1