Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Web > Общие вопросы Web
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 04.09.2018, 18:32   #1
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Адрес: Химки
Сообщений: 13,553
Репутация: 2756
Вопрос Как сграбить, распарсить и перезалить страницу после рерайта на свой сайт советы от программиста

Проблема детей, в том числе тех кто смотрит видосики на ютубе, в том что вы хотите волшебную палочку, и уверены, что она есть, просто надо найти, вернее у вас их много, и вы никак не можете выбрать какую, в итоге не выбираете никакой, но терминами накачались.

А программист работает так. - берем delphi

нужно куда-то получить, ставим компонент - memo1

нужно получить страницу. ставим компонент http из библиотеки indy idhttp.get - получил.

нужно как-то поменять используем фунции delphi, например strreplace

нужно сохранить в файл из memo.savetofile(index.html) - savetofile

нужно как-то отобразить даём файлу расширение .html

нужно отобразить на сервере - берём хостинг и заливаем этот html файл с названием index.html

всё сайт сграблен, распарсен и залит на сервер.

Дальше. идёт оптимизация тех или иных этапов.

неудобно в memo1 менять - берем более визуальный компонент и т.д.

вот так работают программисты.
сайт распарсен результат получен.
хотите красиво отобразить подключаете стили через css.
знаете как работать с базами, подключаете базы данных, при больших объёмах это всегда оправдано.
умеете работать с экселем, используете его как базу данных, тоже неплохо для небольших проектов.
Alar вне форума   Ответить с цитированием
Старый 04.09.2018, 18:43   #2
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,345
Репутация: 3350

icq: 512-765
skype: alexp.frl
По умолчанию

чот сложно, зачем тут винда и GUI?

И strreplace не всегда хватает, а с библиотеками для парсинга HTML в Дельфи не очень (да и idhttp не очень, там даже куки по умолчанию не сохраняются и какие-то другие вещи сложно делаются, лучше хотя бы Synapse).

Мне так больше нравится:
Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
Сейчас экспериментирую чтобы в httpsend замену в Cookie делать на нужную строку
Зачем с куки что-то делать?

Вот сделал на Питоне за 10минут™:

Код:

pipenv install requests
pipenv install pyquery

pipenv shell

Код:

import requests
from pyquery import PyQuery


def parse_price(html):
    pq = PyQuery(html)
    return pq('div.price span').text()


def load_price(url):
    session = requests.session()
    session.get(url)
    session.post(url, {'addr_id': 582})
    resp = session.get(url)
    return parse_price(resp.text)


print(load_price('http://teremok.ru/menu/bliny_sytnye/blin_dvoynoy_s_vetchinoy_i_syrom/'))

Код:

python teremok.py
173


Последний раз редактировалось Alex11223; 04.09.2018 в 18:46.
Alex11223 на форуме   Ответить с цитированием
Старый 04.09.2018, 18:45   #3
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Адрес: Химки
Сообщений: 13,553
Репутация: 2756
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
чот сложно, зачем тут винда и GUI?
затем что все кто начинает что-то делать привык в игровым интерфейсам виндовс, в чём они по вашему ютуб смотрят? ), потому именно delphi им кликабельно понятна. от DOS у них будет ступор, шок, истерика и преждевременные роды.

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
strreplace
естественно, но для того чтобы поменять пару слов сойдёт, я в своё время использовал для некоторых изменений, например случайное удаление или вставка пробелов, тогда текст мгновенно для поисковиков становился уникальным. Думаю, даже сейчас этот метод прокатит для заспамливания поисковой выдачи на низкочастотниках.
Alar вне форума   Ответить с цитированием
Старый 04.09.2018, 18:50   #4
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,345
Репутация: 3350

icq: 512-765
skype: alexp.frl
По умолчанию

DOS? Это в палату к Юре http://www.programmersforum.ru/showthread.php?t=287606

С Дельфи уже мало кто начинает, а с терминала/консоли как раз начинают почти в любом учебнике по любому ЯП, да и на ютубе тоже.
Alex11223 на форуме   Ответить с цитированием
Старый 04.09.2018, 18:52   #5
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Адрес: Химки
Сообщений: 13,553
Репутация: 2756
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
терминала/консоли
т.е. это не


Цитата:
Сообщение от Alex11223 Посмотреть сообщение
DOS

как раз таки терминал или консоль это и есть DOS

понятно что DOS для виндовс, а в линуксе это сложно назвать DOSом, но при желании почему бы и нет? команды одни и теже и мигающие нижнее подчёркивание )) Оу у меня белый квадрат мигает в терминале, наверное это сильно скажется на том как я теперь буду терминалом пользоваться, раньше то на это не обращал внимание )))

Это опять констатирует факт, что слишкмо много внимания к ненужным финтифлюшкам у меня в голове термины DOS и консоль идут как сининомы и я раньше даже не задумывался, что это не корретно если с научной точки зрения подходить ))))

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
почти в любом учебнике по любому ЯП
вот потому программистов всё меньше и меньше, у студентов на этом уже этапе не преодолимый ступор, им бы с экселя начинать, например я всегда рекомендую именно его для изучения бд. Хотя сам начинал с БД на текстовых файликах и всё у меня работало, и некоторые проблемы подобных баз изучил на собственном опыте и до сих пор этот опыт пригождается, чтобы понимать какие могут возникать проблемы на больших данных, на совместном использовании баз данных и т.д.

Оттого я в репликации до сих пор не верю )
Alar вне форума   Ответить с цитированием
Старый 04.09.2018, 19:00   #6
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,345
Репутация: 3350

icq: 512-765
skype: alexp.frl
По умолчанию

Ну cmd это не особо MS DOS начиная с ХР, и там с вин8-10 активно продвигается более удобный и юниксо-подобный PowerShell.
+ во многих IDE вообще не видно никакого страшного черного окна, просто текст выводится в окне самой IDE.
Alex11223 на форуме   Ответить с цитированием
Старый 04.09.2018, 19:03   #7
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Адрес: Химки
Сообщений: 13,553
Репутация: 2756
По умолчанию

Alex11223, я уже учёл эту поправку, повторю, для меня это были синонимы. В любом случае терминал меня напрягает, потому предпочитаю любые доступные веб интерфейсы, у них ещё дополнительные ограничения по уровням доступа, которые делают работу более безопасной от эффекта случайного тыка. тот же phpmyadmin для работы с базами.
Alar вне форума   Ответить с цитированием
Старый 04.09.2018, 23:44   #8
Bruto
лишился icq
Пользователь
 
Аватар для Bruto
 
Регистрация: 23.03.2014
Сообщений: 29
Репутация: 22

icq: 744769235
По умолчанию

Be happy, use python)
__________________
Помог ответ-жми весы
Bruto вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
GWT как передать файл на сервер там его распарсить и вернуть обратно на страницу iwk Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 0 09.12.2017 21:49
Распарсить страницу для получения текста новостей xero C# (си шарп) 0 08.12.2012 08:48
Сграбить и экран и высести на сайт chiffa Работа с сетью в Delphi 3 09.09.2012 14:25
Как распарсить страницу DeDoK Общие вопросы Delphi 2 30.11.2009 23:30
Как выкладывать свой сайт в интернет, Как мне выложить сайт, psywalker HTML и CSS 6 21.05.2009 15:04


01:00.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru