Я пытаюсь пройти через исходный код веб-страниц, добавьте <img src="http://www.dot.com/image.jpg"
в HtmlElementCollection
. Затем я пытаюсь выполнить цикл через каждый элемент коллекции элементов с помощью цикла foreach и загрузить изображения через URL-адрес.Изображение скребок с C#
Вот что у меня есть. Моя проблема прямо сейчас не загружается, и я не думаю, что мои элементы добавляются должным образом по имени тега. Если они есть, я не могу ссылаться на них для загрузки.
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void button1_Click(object sender, EventArgs e)
{
string url = urlTextBox.Text;
string sourceCode = WorkerClass.ScreenScrape(url);
StreamWriter sw = new StreamWriter("sourceScraped.html");
sw.Write(sourceCode);
}
private void button2_Click(object sender, EventArgs e)
{
string url = urlTextBox.Text;
WebBrowser browser = new WebBrowser();
browser.Navigate(url);
HtmlElementCollection collection;
List<HtmlElement> imgListString = new List<HtmlElement>();
if (browser != null)
{
if (browser.Document != null)
{
collection = browser.Document.GetElementsByTagName("img");
if (collection != null)
{
foreach (HtmlElement element in collection)
{
WebClient wClient = new WebClient();
string urlDownload = element.FirstChild.GetAttribute("src");
wClient.DownloadFile(urlDownload, urlDownload.Substring(urlDownload.LastIndexOf('/')));
}
}
}
}
}
}
}
Вы пытаетесь пройти через веб-страницу и добавить ... что? –
Проверьте значение urlDownload для допустимого пути. – jac