Необходимо наполнение объектами недвижимости. Много.
- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 40
Меня очень интересует maxisoft, скину тогда вам в личкусделать парсер или базу под конкретный проект
потомучто адрес который парсится может иметь разный вид:
450087, Россия, г. Уфа, ул. Набережная, 57
кто-то пишет просто
ул. Набережная, 57 (как бы в раздел Уфа-фирмы думая что так и надо)
где то люди указывают
г. Уфа, ул. Набережная, 57
где то
Россия, г. Уфа, ул. Набережная, 57
Поле получается парсим полный адрес full_addr
а значения разные, и в поле город
у нас разные значения попадают
450087
ул. Набережная, 57
Так что выбирать нужно для парсинга в карты только сайты с правильно структурированными данными для instantmaps
и так:450087, Россия, г. Уфа, ул. Набережная, 57
Россия, г. Уфа, ул. Набережная, 57
То проблемы быть не должно, а вот если:
Рассия. гор. Уфа дом на Набережной у аптеки, оф. Главный
Тогда, да, проблемы
Россия, 450059, Республика Башкортостан, г.Уфа, ул.Рихарда Зорге, 5
в общем проблематично
и нужно чтобы на странице с данными о фирме адрес разбивался по отдельности
город
улица
дом
и парсить конкретно тогда можно разбивая поля парсинга на
город
улица
дом
а в чем собственно то проблема именно в таком адрес, вроде самый правильный адрес который естьРоссия, 450059, Республика Башкортостан, г.Уфа, ул.Рихарда Зорге, 5
если г. — город,
ул. — улица,
после улицы дом,
много цифр — индекс,
остались два непонятных, но Уфа в России, поэтому республика нам ни к чему, проверяем оба этих поля на вхождение в список стран для парсинга и берём подошедшее.
Если вы парсите с разделов, то сначала пройтись по всей структуре и определить город этого раздела и смотреть уже только на конкретный адрес.
Если на странице есть карта с координатами, определяете адрес по апи.
Вы показываете самые чёткие и ровные примеры, которые спарсить на ура можно, а вы определите координаты и конкретный адрес моего примера?
Рассия. гор. Уфа дом на Набережной у аптеки, оф. Главный
такое только в отдельный список и ручками.Рассия. гор. Уфа дом на Набережной у аптеки, оф. Главный
Разбиваем по запятым:
если г. — город,
ул. — улица,
после улицы дом,
много цифр — индекс,
остались два непонятных, но Уфа в России, поэтому республика нам ни к чему, проверяем оба этих поля на вхождение в список стран для парсинга и берём подошедшее.
Если вы парсите с разделов, то сначала пройтись по всей структуре и определить город этого раздела и смотреть уже только на конкретный адрес.
Если на странице есть карта с координатами, определяете адрес по апи.
Вы показываете самые чёткие и ровные примеры, которые спарсить на ура можно, а вы определите координаты и конкретный адрес моего примера?
Рассия. гор. Уфа дом на Набережной у аптеки, оф. Главный
дак это пример а на самом деле всё не по шаблону
есть такое Россия,, ул.Пермская — по запятым пролетели
есть Уфа — то есть без г. указано
тоже самое с улицами кто ставит ул. а кто нет
есть ул.Пермская 9 — дом указан без запятой
индекс я как понял вообще не нужен
Какие два(оба)этих поля? Поле одно — Адрес: Россия, индекс, республика, город, улица, дом, офис
остались два непонятных, но Уфа в России, поэтому республика нам ни к чему, проверяем оба этих поля на вхождение в список стран для парсинга и берём подошедшее.
причем всё в произвольном порядке представлено как текстовая строка в одном единственном поле
<tr class=firm_info></tr>
Значит пробиваете первый текст по списку стран, следующее по списку городов, цифра — это дом.
Или парсите в несколько этапов, сначала наполняете базу и только со строкой адреса, а затем перебираете всё постепенно, пока не достигните нужного результата.
Пока не добился нужного результата, приходилось добавлять новые условия, ибо не всё по полочкам.
preg_match('|<title>Характеристики ([^\(]*)\(([^,]*),([^\)]*)\)([^<]*)<\/title>|is', $output, $head); preg_match('#<li class="selected"> <strong>([^<]*)<\/strong>(?:.*?)<br \/><strong>(?: <span class="price">([0-9\s]+)<span|)#is', $output, $prais); $harki['proiz'] = $proiz[1] ? 0 : 1; $harki['prodazh'] = $prodazh[1] ? 0 : 1; $harki['complekt'] = $prais[1]; if(($proiz[1] || $prodazh[1]) && !$harki['complekt']){ }else{ $harki['model'] = $seriya[0].'серия'; $harki['complekt'] = $seriya[1]; }else{ while(true){ echo $h1.'='.$harki['model']."\n"; $harki['model'] = $h1; break; }else{ } } } } } $harki['pokolen'] = $head[2]; $harki['goda'] = $goda[0]; $harki['cena'] = $prais[2]; $harki['complekt_dvig'] = $prais_com[1]; $harki['complekt_name'] = $prais_com[2]; $harki['complekt_name'] = 'Luxury '.$prais_com[2]; } $harki['complekt_dvig'] = $spec[0]; $harki['complekt_name'] = 'Специал'.$spec[1]; } $harki['complekt_dvig'] = $spec[0]; $harki['complekt_name'] = 'Особ'.$spec[1]; }
На пролёт запятых вообще до лампочки.
Значит пробиваете первый текст по списку стран, следующее по списку городов, цифра — это дом.
Или парсите в несколько этапов, сначала наполняете базу и только со строкой адреса, а затем перебираете всё постепенно, пока не достигните нужного результата.
Пока не добился нужного результата, приходилось добавлять новые условия, ибо не всё по полочкам.
поле одно и в нем например Адрес: Первомайская 79/4-оф.15
как пробить это поле по странам, городам, улицам?
У меня была строка со словами и пробелами, в ней была и марка, и модель, и комплектация (которую надо было разбить ещё и на её название и двигатель). Прогоняя эту строчку и добавляя новые условия, я получил нужный мне результат.
Вы сначала соберите все адреса строкой в базу, потом сами всё поймёте как их расшифровывать.
вы про УРЛ адреса ?
толи я непонимаю толи вы
Есть фирмы из одной категории "Бани"
в категории Бани ссылки на компании-бани
на странице компании-баня1
Адрес: Первомайская 79
на странице компании-баня2
Адрес: г. Уфа Севастопольская, 46/2
на странице компании-баня3
Адрес: Россия, 450786, Уфа улица Узбекская 46/2
на странице компании-баня4
Адрес: 450786, Уфа, Узбекская 46/2
на странице компании-баня5
Адрес: частный дом №5 на Большой Рязанской
Видите что написание адреса не было шаблонным, тут правил обработки не соберешь ?!
- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 40