Нужна консультация: просмотр веб-страницы с использованием .NET

StackOverflow https://stackoverflow.com/questions/1003141

  •  05-07-2019
  •  | 
  •  

Вопрос

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

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

Это то, что я сделал до сих пор:

:: 1) . Перейдите на определенный футбольный веб-сайт (например, http://www.livescore.com/default.dll?page=england ) и загрузите HTML-код с помощью WebClient.

:: 2) С помощью SgmlReader преобразуйте HTML в XML

:: 3) С помощью XmlDocument извлекаю искомые данные. Обычно это включает в себя:

::::::: 3.1) Получение узлов с помощью GetElementsByTagName () (например, GetElementsByTagName (" tr "))

::::::: 3.2) Циклический просмотр списка узлов, возвращаемых методом GetElementsByTagName ()

Есть ли лучший способ сделать то, что я пытаюсь сделать?

Я думал о LINQ to XML. Как вы думаете, это улучшит производительность?

Любые предложения или комментарии будут с благодарностью!

Это было полезно?

Решение

Просто используйте HTML Agility Pack! http://www.codeplex.com/htmlagilitypack

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

Другие советы

Используйте такой сервис, как эти ребята , которые почти все для вас сделали. Вы также можете воспользоваться бесплатным сервисом, таким как Dapper . Я считаю, что вы можете экспортировать данные в различные форматы, хотя я не знаю, сможете ли вы получить данные в реальном времени, у вас может быть задержка.

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

После преобразования данных в XML вы можете использовать XSLT , чтобы преобразовать их в более простой набор XML и тот, который больше подходит для ваших целей. Оттуда вы можете использовать LINQ to XML, чтобы получить необходимые данные из XML. Преимущество этого подхода состоит в том, что он отделяет веб-сайт от сбора данных, поэтому, когда веб-сайт меняет свой формат, вы можете просто изменить XSLT, чтобы он соответствовал, и больше ничего не нужно трогать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top