Как вы можете щелкнуть правой кнопкой мыши, сохранить цель как с помощью WatiN? - PullRequest
3 голосов
/ 09 августа 2011

Я видел различные решения для сохранения файла с помощью WatiN.

Моя текущая проблема похожа на описанные выше, мне нужно сохранить файл PDF, но есть раздел реестра, который сообщает IE автоматическиоткройте PDF-файл в новом окне, а не сохраните его.

В идеале я мог бы просто удалить этот раздел реестра и двигаться дальше.Однако наша политика безопасности запрещает мне это делать (тьфу.)

Я ищу способ найти ссылку, щелкнуть правой кнопкой мыши и сохранить как с использованием встроенного механизма WatiN, а неиспользование mouse_event в user32.dll.

Возможно ли это?

Спасибо за помощь!

1 Ответ

0 голосов
/ 07 мая 2015

Это очень старый вопрос, но в качестве ссылки для других я опубликую его решение.

Я думаю, что подход, о котором вы думаете, неверен.Если у вас есть ссылка на PDF, у вас есть адрес PDF (даже если вам нужно перейти на другие страницы, чтобы сформировать окончательный URL-адрес для загрузки, который вы в любом случае можете эмулировать с помощью Watin), если у вас есть адресPDF-файл, тогда вы должны просто скачать его:

На этом этапе вы должны получить ссылку href string (которая должна содержать файл, который вы хотите загрузить)

using (WebClient client = new WebClient())
{
   string DownloadFolder = @"C:\DownloadFolder";
   if (Directory.Exists(DownloadFolder))
   {
     string downloadURL = "https://www.somesite.com/somepath/filename.pdf"; // this should come from the href on the a link.
     client.DownloadFile(downloadURL, DownloadFolder + "\\somefilenam.pdf");
   }
}
...