我有一个程序从网页复制图像并将其保存到本地。在某些网页上,保存的图像是完全黑屏。首先,我认为这是代码中的问题,并没有把好的图片。所以我开始调查。我手动去这些页面,并试图复制图像(右键单击,复制图像),它仍然返回一个黑色的图像。有人能告诉我如何绕过代码?这里是目前的代码,它适用于大多数图片从页面复制图像导致黑色图像
IHTMLDocument2 doc = (IHTMLDocument2)webBrowser1.Document.DomDocument;
IHTMLControlRange imgRange = (IHTMLControlRange)((HTMLBody)doc.body).createControlRange();
foreach (IHTMLImgElement img in doc.images)
{
if (img.alt != "my image alt")
continue;
imgRange.add((IHTMLControlElement)img);
imgRange.execCommand("Copy", false, null);
using (Bitmap bmp = (Bitmap)Clipboard.GetDataObject().GetData(DataFormats.Bitmap))
{
if (bmp != null)
{
bmp.Save("testimg.jpg");
}
}
}
哪些页面? Flash是否涉及? – SLaks
@SLaks nope不涉及Flash。 http://bestsoftware2download.com/submit.php从本网页的验证码图片例如....尝试直接从浏览器复制粘贴 –
该图像具有透明背景。 – SLaks