[обновление: я не знаю почему, но оба приведенных ниже примера теперь работают нормально! Первоначально я также видел 403 на примере page2. Может быть, это была проблема с сервером?]
Во-первых, WebClient
проще. На самом деле, Я видел это раньше . Оказалось, что чувствительность к регистру в URL при доступе к википедии; убедитесь, что вы использовали тот же случай в своем запросе к википедии.
[обновлено] Как отмечают Бруно Конде и Гимел, использование% 27 должно помочь сделать его согласованным (прерывистое поведение предполагает, что, возможно, некоторые серверы Википедии настроены иначе, чем другие)
Я только что проверил, и в этом случае проблема с кейсом, похоже, не является проблемой ... однако, , если это сработало (это n't ), это будет самый простой способ запросить страницу:
using (WebClient wc = new WebClient())
{
string page1 = wc.DownloadString("http://en.wikipedia.org/wiki/Algeria");
string page2 = wc.DownloadString("http://en.wikipedia.org/wiki/%27Abadilah");
}
Боюсь, я не могу думать, что делать с ведущим апострофом, который разрушает вещи ...