Парсинг каталога языковых школ в BD

Своппер15 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
02.06.2011

Распарсить список всех школ в каталоге http://www.eslteachersboard.com/

Школы собраны под заголовком Find ESL Schools

Нужно сгруппировать школы в записи по странам, в json-файле формата:

[

{

"pk": 416,

"model": "articles.article",

"fields": {

"category": 46,

"title": "English Language Schools in Wyoming",

"url": "/ESL-schools-in-Wyoming",

"en_original": null,

"link_anchor": "Wyoming",

"content": "

CILS

\r\n

CILS Certificazione di Italiano come Lingua Straniera. It\u2019s a certificate of Italian as a foreign language which is accepted as a state test. Successfully passed this test, you can enter any Italian university.

\r\n

CILS has 4 levels: UNO; DUE; TRE; QUATRO. Each levels consists of 5 parts: listening, reading, grammar, writing and speaking.

\r\n

CILS UNO takes 3,5 hours. It requires basic knowledge.

\r\n\r\n

CILS DUE takes 3,5 hours. It requires ability to use language more freely. This level is enough to enter some universities and colledges.

\r\n

CILS TRE takes 4,5 hours. It requires high level of knowledge. It allows you to seek a job in Italy.

\r\n

CILS QUATRO takes 5 hours 20 minutes. It requires ability to use language at a Native speaker level.

\r\n

CELI 1, 2, 3, 4, 5

\r\n

Certificatos di Conoscenza della Lingua Italiana. These certificates state your knowledge of Italian language and held accordingly to ALTE demands.

\r\n

Price
\r\n\r\nIt varies depending on a level: 40 to 60 euros.

"

}

},

...

]

Где:

"pk": начинается с 417

"category": принимает следующие значения (значения айди я потом автозаменой пробью):

%ASIA_CAT% (сюда не забыть Японию, Корею и Китай)

%EUROPE_CAT%

%NORTH_AMERICA_CAT% (США-Канада)

%SOUTH_AMERICA_CAT% (которая в каталоге — латинская)

%AUSTRALIA_CAT%

%OTHER_CAT% (сюда включить онлайн-школы и нон-инглишь)

"title": "English Language Schools in ТУТПИШЕТЕГДЕ", вместо ТУТПИШЕТЕГДЕ — пишете страну

"url": "/ESL-schools-in-ТУТПИШЕТЕГДЕ", вместо ТУТПИШЕТЕГДЕ — пишете страну, если название из нескольких слов, разделитель — тире

"link_anchor": "ТУТПИШЕТЕГДЕ", вместо ТУТПИШЕТЕГДЕ — пишете страну

"content": — тут сами описания школ

Самое главное: описания надо выпаршивать из отдельных страниц, но отдавать по странам на одной. Например, азиатские школы тут: http://www.eslteachersboard.com/cgi-bin/asia-schools/index.pl Но полное описание каждой на отдельной странице, например: http://www.eslteachersboard.com/cgi-bin/asia-schools/index.pl?read=305

Что нужно сделать:

* собрать все описания (спонсоров игнорировать, например тут — http://www.eslteachersboard.com/cgi-bin/cn/index.pl два спонсора вверху)

* отфильтровать в подгруппы по списку стран мира

* почистить запись от:

* картинок

* названия страны и тире (было Philippines - Taguig City стало Taguig City)

* конструкции в конце названия

* от лишних тегов (нужно, чтобы осталось такое же форматирование, не более того, а обычно внутри мешанина тегов)

* засунуть название + город в скобках в тег h3

* обрамить каждое описание

* склеить описания каждой страны в одно

* создать запись для каждой страны, как выше

* для онлайновых и неанглийских курсов — отдельная страница (считать, что это ещё 2 страны)

Срок исполнения: 2 дня

Заявки фрилансеров