- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Решил попрактиковаться.
Подопытный - это мой сайт
Решил с простенького: со всех страниц моего сайта спарсить название страниц(то, что между тегом h1, он у меня один на странице)
Все старницы взял с sitemap.xml
ну и каждую страницу загонял в переменную функцией file_get_contents и потом регуляркой брал, то что мне надо.
в итоге получилось вот такое чудо - сам граббер (где-то минуту-две парсит данные)
и сам код граббера
У меня вопрос: чего он так долго парсит? Можно как-нибудь увеличить скорость работы парсера?
Я примерно правильно всё сделал или есть способы парсинга получше?
Это зависит от вашего провайдера и провайдера сервера.
Попробуйте залить парсер на свой сайт, и тогда заработает быстрей:)
Леонид правильно Вам сказал, все дело в соединении(скорость). Пока скрипт зачитает файл, пока регуляркой пройдется(по всему файлу!) и т.д. К тому же для ПХП регулярки это ресурсоемкий процесс. Насколько знаю, ПЁРЛ с регэкспами более дружен и работает намного быстрей. Если есть потребность в парсинге чего-то емкого - юзайте ПЁРЛ.
есть всякие веб-сервисы которые чекают позиции сайта.
Они же сами инфу не придумывают, а парсят данные с выдачи ПС, так же?
Почему они быстро работают? Почти моментально вроде как.
Наверное всякие яндексы имеют деньги на норм выделенный канал, и возможно чекеры имеют норм канал. Попробуйте сами с яндекса спарсить первые 10 тайтлов сайтов, которые в выдачу попадают и посмотрите.
Лол.
/<loc>(.+?)<\/loc>/
Милованов Ю.С, попробую)
siv1987, когда-то читал про эти регулярки, но всё забылось. Надо опять будет почитать.
Да вам бы не только про регулярки почитать, не мешало бы еще и про foreach, можно вдвое сократить этот г-код.
file_get_contents вне зависимости от скорости соединения работает очень долго, советую для начала присмотреться к curl, а затем можно и multicurl попробовать. Я обычно пишу парсеры так: получаю страницу через функцию curl, через регулярку собираю все ссылки на статьи, передаю массив ссылок в multicurl, получаю массив результатов, экспортирую его на нужный сайт и перехожу к следующей странице. В multicurl указываю количество потоков равное количеству ссылок на странице. Получается самый оптимальный вариант парсинга по скорости.
ArtBlogger, спасибо, почитаю про этот curl
---------- Добавлено 22.07.2012 в 23:45 ----------
А можно сделать граббер, который авторизируется на каком-нибудь сайте и потом уже делает свои дела...
или который может отпралять POST запросы...? :)
Вот как раз CURL это и умеет.