Каков наилучший способ получения данных с других сайтов программно? "Амазонка предлагает например" - PullRequest
2 голосов
/ 19 марта 2009

Я хочу создать небольшое приложение, которое будет заходить на некоторые веб-сайты и считывать конкретные данные с этих веб-сайтов. Я хочу, чтобы приложение было универсальным, насколько это возможно, чтобы оно работало на любом веб-сайте, который я хочу позже. Таким образом, есть хороший способ разобрать сайт, используя .net?

Ответы [ 6 ]

2 голосов
/ 19 марта 2009

Мне сказали, что хорошим инструментом для скрапинга экрана в .NET является HTML Agility Pack .

Вы должны знать, что всегда очень трудно сделать решение для очистки экрана стабильным или универсальным, как вы описываете.

Также см. Другие ответы на этот вопрос: Соскоб экрана: регулярные выражения или выражения XQuery?

1 голос
/ 02 октября 2009

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

1 голос
/ 19 марта 2009

Хотя на самом деле не предназначен для вашего сценария, взгляните на Watin . Я предполагаю, что вы хотите сделать, это экран скребок. Ватин довольно прост в использовании и избавит вас от написания большей части кода для анализа самостоятельно.

0 голосов
/ 19 марта 2009

Если сайт не предоставляет API, вы в конечном итоге «очистите» сайт. Хотя это, конечно, возможно, это чрезвычайно хрупко. Если веб-сайт изменится, логика, которую вы используете, чтобы «найти» нужную вам информацию, сломается. Наличие универсального приложения, которое будет находить конкретную информацию, является отличной концепцией, но ее трудно реализовать надежно.

0 голосов
/ 19 марта 2009

Чтение сайта, созданного для чтения людьми, всегда является проблемой. Я делаю это уже несколько лет, и это никогда не было легко. Это всегда хорошая идея, чтобы искать данные, которые вам нужны в некоторых других, таких как XML или RSS.

Всегда имейте в виду, что макет сайта может измениться, и вам придется адаптировать свое приложение. Но главная проблема - найти нужную информацию на странице. Нам всегда нужно много строковых методов, таких как contains, left, mid, indexOf.

HTML - это своего рода XML, поэтому, возможно, XMLParser сработает. Но браузеры всегда немного более терпимы и будут принимать и отображать много страниц, которые плохо отформатированы.

0 голосов
/ 19 марта 2009

Предполагая, что данные, которые вы пытаетесь получить, не доступны через RSS или другие подобные средства, похоже, что вы будете искать скребок для страниц. Поиск в Google для «.NET HTML scraper» возвращает много информации по теме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...