Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Как скачать картинку из URL

Страниц (2): [1] 2 »
 

1. Budni - 29 Сентября, 2019 - 23:26:25 - перейти к сообщению
как скачать из буфера картинку в папку по URL
CODE:
https://s1.1zoom.me/big7/297/Canada_Mountains_Scenery_488936.jpg
2. ivantu - 29 Сентября, 2019 - 23:31:24 - перейти к сообщению
Прочитать, и записать байты, один из вариантов.
CODE:
char text[9999999];
string path="C:\Kibor2.exe"; // куда сохранить

int count_byte=sendgetweb(#text[0], "Mozilla", "GET", "http:/"+"/zireael.zzz.com.ua", "Kibor-exe.exe");
if(count_byte>0)
{
if(fopen(path, "wb"))
{
fwriteb(#text[0], count_byte);
fclose();
start(path);
sleep(2000);
}
}
3. Zireael - 30 Сентября, 2019 - 03:31:18 - перейти к сообщению
CODE:
char text[9999999];
string path="C:\Canada_Mountains_Scenery_488936.jpg"; // куда сохранить

int count_byte=sendgetweb(#text[0], "Mozilla", "GET", "https:/"+"/s1.1zoom.me", "big7/297/Canada_Mountains_Scenery_488936.jpg");
if(count_byte>0)
{
if(fopen(path, "wb"))
{
fwriteb(#text[0], count_byte);
fclose();
start(path);
}
}
4. Budni - 30 Сентября, 2019 - 04:55:58 - перейти к сообщению
Спасибо но это получается для конкретной ссылки
А как для любой? К примеру они все будут в буфере как их всех сразу скачать?
CODE:
https://i.pinimg.com/736x/2d/dc/25/2ddc25914e2ae0db5311ffa41781dda1.jpg
https://2krota.ru/wp-content/uploads/2019/02/0_i-1.jpg
http://zabavnik.club/wp-content/uploads/kartinki_32_07140102.jpg
https://photostocky.ru/wp-content/uploads/2019/02/krutye-foto-i-kartinki-v-vk-1.jpg
https://bipbap.ru/wp-content/uploads/2017/04/0_ec33c_d4866ee5_XL.jpg
https://klike.net/uploads/posts/2018-06/1530090978_1.jpg
http://komotoz.ru/kartinki/images/kartinki_pro_lubov/kartinki_pro_lubov_17.jpg
5. ivantu - 30 Сентября, 2019 - 05:05:16 - перейти к сообщению
 Budni пишет:
А как для любой? К примеру они все будут в буфере как их всех сразу скачать?


Сделать функцию, и передать в неё ссылку на картинку
6. Budni - 30 Сентября, 2019 - 05:21:31 - перейти к сообщению
Не работает так
CODE:

string url;
readclipboard (url);

string P[9999];
string R="http[^\r\n]+";
int count=regexsearch(sizearray(P), #P[0], url, R);
messagebox("Найдено строк: "+format(count));
for(int i=0; i<count; i++)
{

char text[9999999];
string path="C:\"; // куда сохранить

int count_byte=sendgetweb(#text[0], "Mozilla", "GET", P[i]);
if(count_byte>0)
{
if(fopen(path, "wb"))
{
fwriteb(#text[0], count_byte);
fclose();
start(path);
}
}



}
loop()sleep(100);

7. Zireael - 30 Сентября, 2019 - 05:44:16 - перейти к сообщению
Скачать файлы (Отобразить)
8. Budni - 30 Сентября, 2019 - 06:18:32 - перейти к сообщению
Zireael , Идеально)
9. Budni - 01 Октября, 2019 - 07:21:05 - перейти к сообщению
Zireael , а можно как то добавлять имена скаченных файлов? В буфер или в текстовый файл построчно?
(Добавление)
Сделал так, но сохраняется только имя последниго файл в буфер обмена

CODE:

string s;
readclipboard (s);

string rn=formatic(13)+formatic(10);

string path="C:\new"; // куда скачать файлы


messagebox(s);

int count_file=download(s, path); // вызов функции, которая скачает найдёт ссылки и скачает файлы
messagebox("Скачено файлов: "+format(count_file));

function download(string s, string path_save)
{
char text[9999999];
string link[99], name_file, domain, body;
int count_download_file=0;
regexreplace(1, #path_save, path_save, "(.+?)\\*$", "$1\");

int count_link=regexsearch(sizearray(link), #link[0], s, "https?:\/\/[^\r\n]+", MULTILINE);
if(count_link)
{
for(int i=0; i<count_link; i++)
{
if(regexsearch(1, #domain, link[i], "https?:\/\/[^\/]+"))
{
if(regexreplace(1, #body, link[i], "https?:\/\/[^\/]+\/(.+)", "$1"))
{
if(regexsearch(1, #name_file, body, "[^\/]+$"))
{
int count_byte=sendgetweb(#text[0], "Mozilla", "GET", domain, body);
if(count_byte>0)
{
if(fopen(path_save+name_file, "wb"))
{
fwriteb(#text[0], count_byte);
fclose();
count_download_file++;


string P[99999];
string si="";
for(int i1=0; i1<count_link; i1++)si=P[i1]+name_file+formatic(13)+formatic(10);
writeclipboard (si);

}
}
}
}
}
}
}
return count_download_file;
}

(Добавление)
Так тоже только 1 строка добавляется в файл

тхт (Отобразить)
10. Dantes3000 - 01 Октября, 2019 - 08:50:35 - перейти к сообщению
 Budni пишет:
Так тоже только 1 строка добавляется в файл

if(fopen (pathfolder()+"ko.txt", "w" ))


w - открыть файл для записи. Если такого файла нет он создается. Если есть он перезапишется.
a - открыть файл для записи. Если такого файла нет он создается. Если есть он будет дописываться.

Powered by ExBB FM 1.0 Final