Получите изображение Solvemedia, используя RestSharp - PullRequest
0 голосов
/ 07 октября 2018

Я занимаюсь разработкой приложения, которое должно сделать запрос на веб-сайте для извлечения определенных данных, таких как имя пользователя, баллы / остаток и т. Д.

У меня возникает проблема при входе в систему,клиент должен решить код с картинки, чтобы иметь возможность войти на сайт, я хотел бы извлечь изображение этого кода и показать его клиенту, но у меня возникают проблемы с его извлечением, я пытаюсь сделать это с помощью http запросовс RestSharp причина, по которой я не делаю это с веб-браузером или селеном, заключается в том, что он тратит намного больше ресурсов.

Я пытаюсь это сделать:

RestClient restClient = new RestClient(@"//api-secure.solvemedia.com/papi/media?c=2@gAB09NHSertXLv3TnpobmKDxvkjsaT4m@X4wLMdkN.u0ENU8bgrS3KH9APTC4lJjokJaIfZePPIgNLL84QkOaQlXcxzHvOVTTU98Of7mo8BoC0QQuiH1RMqMrGof6BbL-tReeY8AHhPA7-nwvQKLqUEXQwTL4HhLXfZVre9jccpqQxFGIRYZH1ZQoAKCV5k1TGCLXXP9vMVsJFntDNz6Ozik02MANT1siBJRYTNIpGcj6p6Gbq5j0HvQChz7jtgdzwlj7nee0BdZphpg27ikQlVB5IUelMvSjzNNvPZawB9YbC9v6zyJngNQaJIJku2SPJkhFXIK0uoA;w=300;h=150;fg=000000;bg=f8f8f8");
var fileBytes = restClient.DownloadData(new RestRequest("#", Method.GET));
File.WriteAllBytes(Path.Combine(directory, "poster-got.jpg"), fileBytes);

Проблема в том, что яполучить только изображение с сообщением «Ошибка носителя». Есть ли способ получить изображение, которое отправляется при запросе страницы входа?Можно ли это сделать с помощью Restsharp?Если бы не с какой библиотекой я мог бы это сделать?

1 Ответ

0 голосов
/ 27 октября 2018

Для загрузки изображения я использую https://github.com/jgiacomini/Tiny.RestClient

Но когда я пытаюсь просмотреть ваше изображение в моем браузере, у меня возникает ошибка носителя.Я думаю, что вы используете неправильный URL.

В вашем случае используется Tiny.RestClient;

var client = new TinyRestClient(new HttpClient(), "@"http//api-secure.solvemedia.com");
FileInfo fileInfo = await client.
GetRequest("papi/media").
AddQueryParameter("2@gAB09NHSertXLv3TnpobmKDxvkjsaT4m@X4wLMdkN.u0ENU8bgrS3KH9APTC4lJjokJaIfZePPIgNLL84QkOaQlXcxzHvOVTTU98Of7mo8BoC0QQuiH1RMqMrGof6BbL-tReeY8AHhPA7-nwvQKLqUEXQwTL4HhLXfZVre9jccpqQxFGIRYZH1ZQoAKCV5k1TGCLXXP9vMVsJFntDNz6Ozik02MANT1siBJRYTNIpGcj6p6Gbq5j0HvQChz7jtgdzwlj7nee0BdZphpg27ikQlVB5IUelMvSjzNNvPZawB9YbC9v6zyJngNQaJIJku2SPJkhFXIK0uoA;w=300;h=150;fg=000000;bg=f8f8f8").
DownloadFileAsync("c:\"poster-got.jpg");
...