Использование одного веб-сканера для удаления нескольких веб-сайтов в предварительно заданном формате с вложениями? - PullRequest
0 голосов
/ 29 апреля 2019

У меня есть список ок.52 веб-сайтов, которые ведут к ок.150 веб-страниц, на которые мне нужно соскабливать.Исходя из моего невежества и отсутствия исследований, я начал создавать сканеры для каждой веб-страницы, которые становятся все труднее завершить и поддерживать.

Основываясь на своем анализе, я уже знаю, какую информацию я хочу просмотреть для каждой веб-страницы, и ясно, что эти сайты имеют свою собственную структуру.С другой стороны, я заметил, что у каждого веб-сайта есть общие черты в их веб-структуре.Мой вопрос на миллион долларов, есть ли один метод или один веб-сканер, который я могу использовать для очистки этих сайтов?Я уже знаю информацию, которая мне нужна, эти сайты редко обновляются с точки зрения их веб-структуры, и большинство этих сайтов имеют документы, которые необходимо загрузить.

В качестве альтернативы, есть ли лучшее решение для использования, которое уменьшит количество созданных веб-сканеров?Кроме того, эти веб-сканеры будут использоваться только для загрузки новой информации о веб-сайтах, на которые я нацеливаюсь.

Ответы [ 2 ]

0 голосов
/ 30 апреля 2019

Я предлагаю вам сканировать определенные теги, такие как body, h1, h2, h3, h4, h5, h6, p и ... для каждой ссылки. Вы можете собрать все p теги и добавить их в конкретную ссылку. Он может быть использован для каждого тега, который вы хотите сканировать. Также вы можете добавлять связанные ссылки тегов в вашу базу данных.

0 голосов
/ 30 апреля 2019

[…] я начал создавать сканеры для каждой веб-страницы, которая становится все труднее завершать и поддерживать […] ясно, что эти сайты имеют свою собственную структуру. […] Эти сайты редко обновляются с точки зрения их веб-структуры […]

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

Вы говорите, что завершение новых пауков (я предполагаю, что вы имеете в виду их разработку, а не сканирование или что-то еще) становится трудным, однако, если они похожи на существующего паука, вы можете просто скопировать и вставить наиболее похожий существующий паук, и вносите только необходимые изменения.

Обслуживание должно быть проще всего с отдельными пауками для разных сайтов. Если один сайт меняется, вы можете исправить паука для этого сайта. Если у вас есть паук для нескольких веб-сайтов, и изменяется только один из них, вам нужно убедиться, что ваши изменения для измененного веб-сайта не нарушают остальных веб-сайтов, что может стать кошмаром.

Кроме того, поскольку вы говорите, что структуры веб-сайтов меняются не часто, в целом обслуживание не должно быть таким сложным.

Если вы заметили, что вы повторяете много кода, вы можете извлечь некоторый общий код в промежуточное ПО для пауков, промежуточное ПО для загрузчиков, расширение, загрузчик элементов или даже в базовый класс пауков, совместно используемый двумя или более пользователями. пауки. Но я бы не стал использовать один подкласс Spider для очистки нескольких разных веб-сайтов, которые могут развиваться отдельно.

...