.NET 4.x Вытащить текст со страницы по ссылке - C#
Формулировка задачи:
Дана ссылка на сайт, если нажать на сайте Ctrl+A + Ctrl+V и поместить это в txt(но это вручную), то можно достать нужную мне информацию, ибо в исходном коде этого нету..
Как это сделать программно, не вручную?
WebBrowser лучше не использовать, ибо выскакивает через него ошибка, что мол не поддерживается данный браузер и ссылку не грузит соответственно!
Решение задачи: «.NET 4.x Вытащить текст со страницы по ссылке»
textual
Листинг программы
using System; using System.Diagnostics; using System.IO; using System.Net; using System.Windows.Forms; namespace PremBF4 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } string parname; private void button1_Click(object sender, EventArgs e) { label3.Text = "Определяется"; ssil(); } private bool gh; private void prem(string ssilka) { gh = false; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ssilka); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader sr = new StreamReader(response.GetResponseStream()); richTextBox1.Text = sr.ReadToEnd(); sr.Close(); foreach (string h in richTextBox1.Lines) { if (h.IndexOf("<img class=\"common-gameexpansion") > -1) { gh = true; break; } else { gh = false; } } if (gh == true) { label3.Text = "Есть"; } else { label3.Text = "Нет"; } } private void ssil() { string url = textBox1.Text; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader sr = new StreamReader(response.GetResponseStream()); richTextBox1.Text = sr.ReadToEnd(); sr.Close(); foreach (string h in richTextBox1.Lines) { if (h.IndexOf(" <a href=\"/bf4/ru/soldier/") > -1) { parname = h.Remove(0, 10); int cc = parname.Length - 2; parname = parname.Remove(cc, 2); parname = "http://battlelog.battlefield.com" + parname; if (checkBox1.Checked == true) { Process.Start(parname); } prem(parname); break; } } } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { textBox1.Text = ""; } private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { MessageBox.Show("Ссылка на профиль типа:" + Environment.NewLine + "http://battlelog.battlefield.com/bf4/ru/user/Nickname", "Ссылка на профиль:", MessageBoxButtons.OK, MessageBoxIcon.Information); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д