Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Нужен скрипт, который по заданным поисковым запросам будет собирать данные из топ 10 выдачи яндекса. Здесь важно выполнять поиск по региону "Москва". Скрипту подается два списка фраз. Парсить выдачу нужно только по первому списку.

Собрать нужно следующее:

- среднее значение размера текста без пробелов по каждой фразе из списка 1

- подсчитать среднее точное вхождение запросов в текст по каждой фразе из списка 1

- подсчитать среднее разбавочное вхождение запросов в текст по каждой фразе из списка 1

- подсчитать среднее точное вхождение запросов в текст по каждой фразе из списка 2

- подсчитать среднее разбавочное вхождение запросов в текст по каждой фразе из списка 2

- подсчитать среднее количество каждого слова из фраз, учитывая уже подсчитаные до этого фразы

- подсчитать среднее количество каждого слова с изменением окончания из фраз, учитывая уже подсчитаные до этого фразы

Разбавочные вхождения фраз - это фразы, в словах которых изменены окончания, или со вставкой дополнительных слов. Например есть фраза "аллергический дерматит у детей". Следующие найдены фразы будут считаться как разбавочные вхождения:

"аллергического дерматита у детей" - здесь изменены окончания у первых двух слов

"аллергический дерматит встречается у детей" - здесь добавлено слово "встречается"

"аллергический контактный дерматит у детей" - здесь добавлено слово "контактный"

Для себя я вижу примерно следующий алгоритм.

В HTML форму кидаем два списка запросов. Например список 1:

аллергический дерматит у детей

лечение аллергического дерматита у детей

аллергический дерматит у ребенка

лечение аллергического дерматита у детей

аллергический дерматит у детей симптомы

аллергический дерматит у грудных детей

чем лечить аллергический дерматит у детей

и список 2:

аллергический дерматит

дерматит у детей

дерматит у ребенка

лечить аллергический дерматит

1) Из наших запросов отдельно выдераем все слова, без повторов и сохраняем их в списке 3. Предлоги и союзы не нужны.

2) Скрипт парсит выдачу топ 10 из яндекса по каждому запросу только из списка 1.

3) Далее из полученых всех страниц (в даном случае - 70) нужно получить только текст, без символов заключенных между угловыми скобками ).

4) Далее из обработаных полученых текстов нужно получить:

- среднее количество символов без пробелов (из всех полученых текстов)

- среднее количество точных вхождений для каждой фразы из списка 1; затем удаляем эти фразы из текста, чтобы они потом не мешали при следующих подсчетах фраз и слов

- среднее количество разбавочных вхождений для каждой фразы из списка 1; затем удаляем эти фразы из текста

- среднее количество точных вхождений для каждой фразы из списка 2; затем удаляем эти фразы из текста

- среднее количество разбавочных вхождений для каждой фразы из списка 2; затем удаляем эти фразы из текста

- среднее количество каждого слова из списка 3

Скрипт должен поддерживать работу через список прокси. Если прокси не указаны в настройках, тогда использовать локальный ip.

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

9 лет назад
ameganix
Алексей 
39 летРоссия
13 лет в сервисе
Был
3 года назад