Как восстановить чужую БД из интернет
6498
37
Коллеги программисты. Подскажите направление в решении следующей задачи.Назову ее "обратной". Прямая задача следующая. Допустим у вас есть прайс на товар и вам на интернет странице надо выложить эту БД в читаемом (табличном) виде. Теперь обратная задача. В интернете на чьм-то сайте выложена БД. Причем многостраничная. Надо каким то образом ее считать и представить в виде формата БД на своем компе. Какой подход может быть использован для обратной задачи с использованием языков программирования. Заранее благодарен за идеи.
Mad_Dollar
guru
скачиваем html.
парсим оный, из полученного генерируем SQL-дамп
заливаем дамп в любую SQL-бд (мускул, мсскуль, постгря - все что пожелаете)
пользуемся
для реализации можете использовать perl - есть и под винду, и под униксы, с текстом работает чудесно, регэкспы и прочие вкусности одни из лучших (имхо самые лучшие), модулей в cpan для того чтобы выдрать html из сети + законнектится к дв куча.
парсим оный, из полученного генерируем SQL-дамп
заливаем дамп в любую SQL-бд (мускул, мсскуль, постгря - все что пожелаете)
пользуемся
для реализации можете использовать perl - есть и под винду, и под униксы, с текстом работает чудесно, регэкспы и прочие вкусности одни из лучших (имхо самые лучшие), модулей в cpan для того чтобы выдрать html из сети + законнектится к дв куча.
Задача эта уже давно решается разнообразными поисковиками товаров и цен.
Решать можно с помощью любого языка программирования, будьте только готовы к тому, что понадобится постоянная ручная подстройка.
Решать можно с помощью любого языка программирования, будьте только готовы к тому, что понадобится постоянная ручная подстройка.
Задача эта уже давно решается разнообразными поисковиками товаров и цен.Для меня это задача новая. Нельзя ли какунибудь ссылочку, чтобы конкретно разобраться
Решать можно с помощью любого языка программирования, будьте только готовы к тому, что понадобится постоянная ручная подстройка.
fagit
veteran
скачиваем html.Спасибо за совет. К стыду своему даже не все понял. Но интуитивный вопрос. Есть HTML страница, на ней где то лежит таблица (есть еще и другой текст). Разве прежде не надо выделить из всего таблицу, чтобы потом как то загружать в БД?
парсим оный, из полученного генерируем SQL-дамп
заливаем дамп в любую SQL-бд (мускул, мсскуль, постгря - все что пожелаете)
пользуемся
для реализации можете использовать perl - есть и под винду, и под униксы, с текстом работает чудесно, регэкспы и прочие вкусности одни из лучших (имхо самые лучшие), модулей в cpan для того чтобы выдрать html из сети + законнектится к дв куча.
Mad_Dollar
guru
страница, содержащая таблицу имеет текстовое начало в виде <table> и конец в виде </table>. Между ними - данные, которые нужно преобразовать из тектового представления в хтмл в нормальные данные, которые можно засунуть в БД. Обычная работа с текстом - use perl =)
Mad_Dollar
guru
Если вам так интересно - могу провести специально для вас семинар с практическими занятиями за кружкой пива на тему "What is it [censored] perl and how to use it. Regexp in perl and unix - what is it and how its work? =)" на вашем примере =)
Сейчас читают
Соседи жестоки со своим ребенком (1,5 г.)
6719
26
Конец?
16411
86
Посоветуйте, как быть..
1544
42
artem2005
guru
заступлюсь за пхппэхапёсты тож эту задачу решат на раз-два.
ну а топикстартеру даж не знаю чего сказать... судя по вопросам, ему лучше всего найти кого-нить знающего.
ну а топикстартеру даж не знаю чего сказать... судя по вопросам, ему лучше всего найти кого-нить знающего.
artem2005
guru
иногда важен результат а не длина.. ))))
Mad_Dollar
guru
=) попробуем померятсо результатом? =) ваще похапе ваше регэкспы приобрело после долгих просьб и молитв нуждающихсо, однако перл же изначально разрабатывался для обработки текстовых данных (расшифруйте perl =) )
а еще я могу из перла "экзешник" собрать =)
а еще я могу из перла "экзешник" собрать =)
Условия не ясны.
Для большей простоты можно воспользоваться банальным java`ом из области:
document.getElementById('tableID').getTagsByName('TR')
И т.д. и в итоге выйти на blabalbla.innerText.
Всё, и браузер сам уже распарсит все как надо.
Могу сделать такую штуку за деньги.
Для большей простоты можно воспользоваться банальным java`ом из области:
document.getElementById('tableID').getTagsByName('TR')
И т.д. и в итоге выйти на blabalbla.innerText.
Всё, и браузер сам уже распарсит все как надо.
Могу сделать такую штуку за деньги.
угу. и в москву можно через владивосток ехать, причем пару раз в этот владивосток заехать..
а сколько денег то хочешь, сильно много?
а сколько денег то хочешь, сильно много?
Могу сделать такую штуку за деньги.К сожалению денег по задаче нет, хотя она и для реального предприятия. Поставлена как поисковая для студентов старшекурсников со специализацией по ИТ.
fagit
veteran
могу провести специально для вас семинарНаписал в личку
Это стандартная фрилансерская задача.
И явно незапросто так делается.
Сходу думаю 15-20 т.р.
И явно незапросто так делается.
Сходу думаю 15-20 т.р.
1. Открываем MS Excel.
2. Данные - Импорт внешних данных - Создать веб-запрос.
3. Вбиваем адрес в соответсвующую строку.
4. Выделяем нужную таблицу и жмём "Импорт".
Всё
2. Данные - Импорт внешних данных - Создать веб-запрос.
3. Вбиваем адрес в соответсвующую строку.
4. Выделяем нужную таблицу и жмём "Импорт".
Всё
Если это так, то было бы здорово. Я поэкспериментирую. Спасибо.
интернет странице надо выложить эту БД в читаемом (табличном) виде. Теперь обратная задача. В интернете на чьм-то сайте выложена БД. Причем многостраничная. Надо каким то образом ее считать и представить в виде формата БД на своем компе.Я впрямь робею уточнить - что такое формат БД и
чем он отличается от формата таблиц на вебстранице?
1. Открываем MS Excel.если запрос дает сотни и тысячи страниц, как быть?
2. Данные - Импорт внешних данных - Создать веб-запрос.
3. Вбиваем адрес в соответсвующую строку.
4. Выделяем нужную таблицу и жмём "Импорт".
Всё
В Excel 2007 1 миллион строк ограничение. Финансистам нравится....
я говорю про страницы, на которые разбит результат поиска. а не про общее количество строк результата. чувствуете разницу, нет?
что такое формат БД иЯ имею в виду какой либо формат реляционной БД. Скорее всего локальной, например .dbf. Цель- использовать механизм СУБД формирования всевозможных отчетов.
чем он отличается от формата таблиц на вебстранице
если запрос дает сотни и тысячи страниц, как быть?Да это понятно
1. Открываем MS Excel.поддержу - до сотни страниц, вероятно, быстрее получится...
2. Данные - Импорт внешних данных - Создать веб-запрос.
3. Вбиваем адрес в соответсвующую строку.
4. Выделяем нужную таблицу и жмём "Импорт".
Всё
только делал бы через правый клик по таблице, далее "экспорт в эксель"
если ж тянуть предполагается регулярно, без парсера не обойтись - пхп с регэкпами в помощь
если запрос дает сотни и тысячи страниц, как быть?Кстати, а что мешает цыкл на VBA?
Это будет быстрее, чем парсить
разные методы передачи данных. если, скажем, post или сессия - все, обламывается метод с экселем. так что раз этот способ не универсальный - отбрасываем его.
если запрос дает сотни и тысячи страниц, как быть?запрос Вам не тысячи страниц даёт, а их количество.
У поисковиков защита стоит от программного выуживания из их бд данных
да ну! сам то понял, что сказал? моя формулировка куда точнее
и при чем тут поисковики вообще?
и при чем тут поисковики вообще?
1. "...сходу...".Это стандартная фрилансерская задача. И явно незапросто так делается. Сходу думаю 15-20 т.р.С дуба, что ли, извиняюсь, рухнули, с такими ценами? Перловый парсер несколько лет назад заказывал за много меньшие рубли. Программист написал его за пару дней, тот влёт (ну, на самом деле часа за полтора, чтобы притворяться браузером делал периодически паузы) парсил сайт из 20 тысяч страниц пару лет, при этом, при изменении структуры разметки сайта можно было легко вносить изменения в сам скрипт. Топикстартеру просто нужно делать заказ именно perl-программистам, в этом плане МэдДоллар прав абсолютно. Если нужны регэкспы - это именно перл. Во втором издании Фридла пхп и java в связи с регекспами только упоминаются, типа, чтобы никого не обидеть. А изначально именно перл был заточен под парсинг текстовых данных.
2. "...несколько лет назад...".
3. "...за пару дней..."
- Учёт времени вёлся или это Ваша оценка из головы (см. "...несколько лет назад...")?
- Сколько в часах было?
- Какие тогда ставки у перловиков были и какие сейчас?
4. "...легко вносить изменения в сам скрипт..."
- Кому вносить?
- Тому, кто хорошо понимает регэкспы или ламеру?
5. "...регэкспы - это именно перл..."
- Это можно и SQL-сервером сделать - Парсинг данных типа HTML`я можно делать и DOM-парсером с XLST или XPath`ом.
- Не перлом единым как говорится.
- С т.з. ставок программеров, дешевле заказать PHP`еру, т.к. их больше. Экономика здесь побеждает, а не писькомерка.
Ну, вы же и сами понимаете, что была опубликована задача, цена на её решение и условия оплаты. Учёт часов исполнителя я не вёл, но, подозреваю, делал он это в свободное от работы время.
Что касается внесения изменений, то сложней разобраться с feed43.com или яху.пайпс, чем с документированным и форматированным перл-скриптом (это входило в условия).
Можно заказать и пхп-еру, какие проблемы. Можно и вам.
Только топик-стартер, похоже, вопрос задал теоретический. И ответ ожидает теоретический.
Что касается внесения изменений, то сложней разобраться с feed43.com или яху.пайпс, чем с документированным и форматированным перл-скриптом (это входило в условия).
Можно заказать и пхп-еру, какие проблемы. Можно и вам.
Только топик-стартер, похоже, вопрос задал теоретический. И ответ ожидает теоретический.
Как бэ топик-стартер вааще м.б. уголовник, ибо парс чужого сайта супротив его воли есть нарушение автоправ.
Думаю, даже хуже - не уголовник, а сотрудник правоохранительных органов.
Смотри, выдаёт себя за «коллеги-программисты», чтобы вытянуть на себя тех, кто парсерами занимается и заарестовать насмерть на Колыму.
Смотри, выдаёт себя за «коллеги-программисты», чтобы вытянуть на себя тех, кто парсерами занимается и заарестовать насмерть на Колыму.
Один день из жизни Ивана Денисовича?
Даа... На зоне то перл мало поможет.
А, учитывая, что в стране РФ даже у ПИнк Флойда требовали отчислений самим себе, то это может быть вполне
Даа... На зоне то перл мало поможет.
А, учитывая, что в стране РФ даже у ПИнк Флойда требовали отчислений самим себе, то это может быть вполне
парс чужого сайта супротив его воли есть нарушение автоправ.Есть ли в поставленной задаче нарушение авторских прав. Пользователь выложил на сайте всю информацию. В принципе, ее можно и ручками переписать ничего не взламывая. Разработчик использует лишь программную автоматизацию. Кроме того должна же быть какая то система регистрации авторских прав типа патента. А то так даже случайное использование чужой информации можно приписать к нарушению. Должен быть принцип- что не запрещено, то разрешено. Есть ли где то документ, что поставленная мною задача относится к нарушающим права.
Кроме того должна же быть какая то система регистрации авторских прав типа патента.Для того, чтобы иметь и защищать авторские права необязательно их формально регистрировать.
Есть даже экстравагантные способы - как застолбить свои авторские права, не вскрывая деталей публично (например, в некоторых странах можно отправить себе по почте описание зрегистрированным письмом)
Патенты и др. способы регистрации просто упрощают сцтяжничество.
В 95% случаев они только и делаются для сутяжничества.
Или же зашищают, не вскрывая деталей
Копирайт, который Вы видите на любой книжке является декларативным, он нигде не регистрируется!
А то так даже случайное использование чужой информации можно приписать к нарушению.Жизнь сурова.
Незнание и неграмотность не освобождают от ответственности и законов, налагаемых обществом
(а зачастую её отягощают).
Большинству осужденных, как показывают исследования, не хватает интеллекта, чтобы понять за что их осудили
Есть ли где то документ, что поставленная мною задача относится к нарушающим права.Есть. Копайте. Или консультируётесь со специалистами
PS
К тому же, регистрация авторских прав не имеет никакого отношения к правозаконности применения Вашего преступного изобретения.
Не запрещается регистрировать изобретения преступлений или преступных действий, как впрочём и сздавать, например, художественные произведения на их основе
Возможно вы правы. У меня из за этого такие чувста, что ИТ технологиями (программированием) в России лучше не заниматься. Чистоту использования ПО соблюсти невозможно, даже если будешь стараться. Остается быть только менеджером по использованию программ, да и там можно попасться.Чувство, что все ИТешники на уголовном крючке. Любого можно выдернуть и посадить.
Остается быть только менеджером по использованию программ, да и там можно попасться.Чувство, что все ИТешники на уголовном крючке. Любого можно выдернуть и посадить.Организаторам и руководителям дают гораздо большие сроки.
Это не только к ИТ или РФ относится. "Закон, что дышло, куда поаернул, туда и вышло"
Вон, когда надували ипотечный пузырь, то давали нобелевские премии за новые экономические модели и парадигмы, а когда надули - стали сажать за то же.