С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/41: Рейтинг темы: голосов - 41, средняя оценка - 4.56
8 / 7 / 2
Регистрация: 08.12.2014
Сообщений: 71

Яндекс Диск. Метод просмотра всех файлов с публичным url

21.08.2019, 12:53. Показов 8319. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите вот есть библиотека https://github.com/rsarov/YandexDiskNET/wiki ,есть метод просмотра всех файлов с публичным url, не понятно как его реализовать. Спасибо
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.08.2019, 12:53
Ответы с готовыми решениями:

Получить URL к файлу, хранящемуся на Яндекс.Диск
Загрузил на диск файл, возможно получить прямой путь к файлу, по каталогам как есть. Не через get запросы, в плоть то формата?

Программа для просмотра файлов, не записанных на диск
Есть ли программа, которая дает возможность просматривать существующие папки и файлы на компьютере и отмечать те, которые уже есть...

Загрузка файлов с Яндекс.Диск
Привет. Можете подсказать как загрузить exe-файл или dll-файл с Яндекс.Диск? Задача: Загрузить указаные файлы в папку с программой и чтоб...

10
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
21.08.2019, 12:59
Там же приведен полный пример использования... Что вам конкретно не понятно?
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
21.08.2019, 13:00
Цитата Сообщение от REN1 Посмотреть сообщение
не понятно как его реализовать. Спасибо
Т.е. вы хотите чтобы кто-то другой изучил библу, и все вам рассказал ?
0
8 / 7 / 2
Регистрация: 08.12.2014
Сообщений: 71
21.08.2019, 13:10  [ТС]
Не понятно он возвращает только мой публичные файлы, если нет, как мне и надо. Куда подставить этот url я не пойму.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
21.08.2019, 15:20
Цитата Сообщение от REN1 Посмотреть сообщение
Не понятно он возвращает только мой публичные файлы, если нет, как мне и надо.
Чей токен укажите, того и файлы будет возвращать. А т.к. чужого токена у вас скорее всего нет, то...

Цитата Сообщение от REN1 Посмотреть сообщение
Куда подставить этот url я не пойму.
Какой url?
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.08.2019, 09:00
Цитата Сообщение от REN1 Посмотреть сообщение
только мой публичные файлы, если нет, как мне и надо
кто-нибудь понял, что тут имелось ввиду?)
1
8 / 7 / 2
Регистрация: 08.12.2014
Сообщений: 71
22.08.2019, 13:09  [ТС]
Someone007 я про это и спрашивал, получается только с моими публичными файлами получится поработать, просто есть чужие публичные файлы и похоже эта библиотека не предназначена с ними работать.

Добавлено через 1 минуту
AndreyVorobey я имел ввиду если работа с публичным файлом, то нужно где то указать и url к ним разве не логично.
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
22.08.2019, 13:11
Цитата Сообщение от REN1 Посмотреть сообщение
просто есть чужие публичные файлы и похоже эта библиотека не предназначена с ними работать.
А почему она должна работать с чужими файлами ?
0
8 / 7 / 2
Регистрация: 08.12.2014
Сообщений: 71
22.08.2019, 13:31  [ТС]
В документации к яндекс диску https://yandex.ru/dev/disk/api... c-docpage/ написано об этих возможностях

Добавлено через 12 минут
Поставил через Nuget пакет для яндекс диска вот ссылка на гитхаб https://github.com/raidenyn/yandexdisk.client, сразу на первом примере появилась проблемка:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Diagnostics.Debug.WriteLine("Test");
 
             async Task UploadSample()
              {
                  System.Diagnostics.Debug.WriteLine("Upload");
 
                  string oauthToken = "***";
 
 
                  IDiskApi diskApi = new DiskHttpApi(oauthToken);
         
                  await diskApi.Files.UploadFileAsync(path: "test.txt",
                                                      overwrite: false,
                                                      localFile: @"C:\Users\Documents\test.txt",
                                                          cancellationToken: System.Threading.CancellationToken.None);
                  System.Diagnostics.Debug.WriteLine("End");
              }
 
 
            UploadSample();
 
            System.Diagnostics.Debug.WriteLine("UploadSample");
        }
    }
}
свои токен заменил ***, ничего не происходит с файлами, на выходе:


"ConsoleApp1.exe" (CLR v4.0.30319: DefaultDomain). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_3 2\mscorlib\v4.0_4.0.0.0__b77a5c561934e08 9\mscorlib.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: DefaultDomain). Загружено "C:\Users\akhmetov138386\source\repos\Co nsoleApp1\ConsoleApp1\bin\Debug\ConsoleA pp1.exe". Символы загружены.
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System\v4.0_4.0.0.0__b77a5c561934e08 9\System.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System.Configuration\v4.0_4.0.0.0__b 03f5f7f11d50a3a\System.Configuration.dll ". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System.Core\v4.0_4.0.0.0__b77a5c5619 34e089\System.Core.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System.Xml\v4.0_4.0.0.0__b77a5c56193 4e089\System.Xml.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
Test
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Users\akhmetov138386\source\repos\Co nsoleApp1\ConsoleApp1\bin\Debug\YandexDi sk.Client.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
Upload
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System.Net.Http\v4.0_4.0.0.0__b03f5f 7f11d50a3a\System.Net.Http.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Users\akhmetov138386\source\repos\Co nsoleApp1\ConsoleApp1\bin\Debug\System.N et.Http.Formatting.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Users\akhmetov138386\source\repos\Co nsoleApp1\ConsoleApp1\bin\Debug\Newtonso ft.Json.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\System.Runtime.Serialization\v4.0_4. 0.0.0__b77a5c561934e089\System.Runtime.S erialization.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\SMDiagnostics\v4.0_4.0.0.0__b77a5c56 1934e089\SMDiagnostics.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код".
"ConsoleApp1.exe" (CLR v4.0.30319: ConsoleApp1.exe). Загружено "C:\Windows\Microsoft.Net\assembly\GAC_M SIL\mscorlib.resources\v4.0_4.0.0.0_ru_b 77a5c561934e089\mscorlib.resources.dll". Сборка модуля выполнена без символов.
UploadSample
Программа "[5764] ConsoleApp1.exe" завершилась с кодом 0 (0x0).
0
8 / 7 / 2
Регистрация: 08.12.2014
Сообщений: 71
12.09.2019, 07:14  [ТС]
Лучший ответ Сообщение было отмечено OwenGlendower как решение

Решение

Вообщем поигравшись с полигоном яндекса, оказалось все просто, по данному URL запросу https://cloud-api.yandex.net:4... =https(тут ссылка на публичный яндекс диск) используя допустим Webclient скачиваем json файл со всеми данными об данном публичном диске, пропарсив его мы можем вытащить всю подноготную о файлах и главное прямую ссылку на скачивания определенного файла. Всем спасибо никто не помог,тема закрыта.
1
4 / 4 / 3
Регистрация: 19.09.2010
Сообщений: 23
31.07.2021, 21:34
Цитата Сообщение от REN1 Посмотреть сообщение
оказалось все просто, по данному URL запросу https://cloud-api.yandex.net:4... =https(тут ссылка на публичный яндекс диск) используя допустим Webclient скачиваем json файл со всеми данными об данном публичном диске
Спасибо REN1,
Оставлю для истории может кому пригодится
Класс сформированный по Json ответу от Яндекса
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
    public class Rootobject
    {
        public string antivirus_status { get; set; }
        public string public_key { get; set; }
        public string public_url { get; set; }
        public int views_count { get; set; }
        public Exif exif { get; set; }
        public DateTime created { get; set; }
        public string type { get; set; }
        public string resource_id { get; set; }
        public DateTime modified { get; set; }
        public int size { get; set; }
        public Comment_Ids comment_ids { get; set; }
        public string mime_type { get; set; }
        public string file { get; set; }
        public string media_type { get; set; }
        public Owner owner { get; set; }
        public string preview { get; set; }
        public string path { get; set; }
        public string sha256 { get; set; }
        public long revision { get; set; }
        public string md5 { get; set; }
        public string name { get; set; }
    }
 
    public class Exif
    {
    }
 
    public class Comment_Ids
    {
        public string private_resource { get; set; }
        public string public_resource { get; set; }
    }
 
    public class Owner
    {
        public string login { get; set; }
        public string display_name { get; set; }
        public string uid { get; set; }
    }
Простейший код скачивания файла
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Адрес = АПИ Яндекса + Ссылка на Ваш Публичный файл
// АПИ Яндекса - https://cloud-api.yandex.net/v1/disk/public/resources?public_key=
// Ссылка на Ваш Публичный файл - https(тут ссылка на публичный яндекс диск)
string BaseAddress = @"https://cloud-api.yandex.net/v1/disk/public/resources?public_key=https(тут ссылка на публичный яндекс диск)";
 
using HttpClient client = new()
{
     BaseAddress = new Uri(BaseAddress)
};
//Папку - куда скачиваем файл
string localpath = @"H:\temp\foo\";
 
// Получаем информацию и парсим в класс
Rootobject _Rootobject = await client.GetFromJsonAsync<Rootobject>("");
 
//Скачиваем файл
WebClient webClient = new WebClient() { Encoding = Encoding.UTF8 };
webClient.DownloadFileAsync(new Uri(_Rootobject.file), Path.Combine(localpath,_Rootobject.name));
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.07.2021, 21:34
Помогаю со студенческими работами здесь

Загрузка файлов на яндекс диск
Всем доброго времени суток. Кто в курсе как на яндекс можно грузить файлы? В нете не много статей по этому поводу, да и те на DELPHI, с...

Запись файлов в Яндекс диск
Подскажите пожалуйста - как сделать и куда смотреть - мне нужно чтобы пользователь - заходил на мою программу - отправлял скажем...

Как сделать метод публичным?
Вот у меня есть код. Не обращайте внимания на странные названия, это я чтобы не запутаться. class Program { ...

Получение списка и самих файлов из облака (любого, яндекс.диск, гугл драйв, дропокс)
Здравствуйте. Вот что хочу сделать: соединиться с облаком (любым), получить список файлов из папки и скачать выбранный файл (по имени). ...

Реализовать класс Студент с публичным (public) полем Имя и публичным (public) методом print(), который выводит поле имя
Реализовать класс Студент с публичным (public) полем Имя и публичным (public) методом print(), который выводит поле имя на экран....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Old Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru