Получить md5 картинки в интернете

Ilant

Client
Регистрация
25.12.2015
Сообщения
6
Благодарностей
0
Баллы
1
Добрый день!
Есть ссылка на товар в интернет магазине.

Задача: спарсить ссылки на картинки и получить md5

Должно получиться вот это:

HTML:
<foto-remote url="http://site1.ru/pictures/image/1.jpg" md5="123456"/>
Я смог спарсить ссылки, но не могу получить md5.

Прошу, помогите!:-)
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 452
Благодарностей
1 888
Баллы
113

Ilant

Client
Регистрация
25.12.2015
Сообщения
6
Благодарностей
0
Баллы
1
мд5 Вы сможете получить только скачав картинку на компьютер.
Ну тогда алгоритм такой приходит в голову: скачать картинку, получить md5, вставить значение в файл, удалить картинку.
Все умею кроме получить md5, подскажите как, пожалуйста.
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 132
Баллы
113

Ilant

Client
Регистрация
25.12.2015
Сообщения
6
Благодарностей
0
Баллы
1
http://zennolab.com/discussion/threads/snipet-poluchenija-md5-dlja-stroki.9898/
http://zennolab.com/discussion/threads/c-shifrovanie-v-md5.17355/


Так в коде страницы получается уже есть строка MD5 и вы ее не можете выпарсить? Или что?
Нет, мне нужно получить вот такую запись:
<foto-remote url="http://site1.ru/pictures/image/1.jpg" md5="123456"/>

У меня есть ссылка на страницу товара. Я перехожу по ссылке, собираю ссылки на фото, получаю вот так:

<foto-remote url="http://site1.ru/pictures/image/1.jpg" md5="
<foto-remote url="http://site1.ru/pictures/image/2.jpg" md5="
<foto-remote url="http://site1.ru/pictures/image/3.jpg" md5="

Далее мне нужно получить md5 этих картинок.

С этим проблема, но за ссылки спасибо, попробую разобраться.
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 452
Благодарностей
1 888
Баллы
113
Нет, мне нужно получить вот такую запись:
<foto-remote url="http://site1.ru/pictures/image/1.jpg" md5="123456"/>

У меня есть ссылка на страницу товара. Я перехожу по ссылке, собираю ссылки на фото, получаю вот так:

<foto-remote url="http://site1.ru/pictures/image/1.jpg" md5="
<foto-remote url="http://site1.ru/pictures/image/2.jpg" md5="
<foto-remote url="http://site1.ru/pictures/image/3.jpg" md5="

Далее мне нужно получить md5 этих картинок.

С этим проблема, но за ссылки спасибо, попробую разобраться.
Качаете фотку, далее выполняете с ней код:

Код:
using (System.IO.FileStream fs = new System.IO.FileStream(@"D:\1.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
    System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
    byte[] fileData = new byte[fs.Length];
    fs.Read(fileData, 0, (int)fs.Length);
    byte[] checkSum = md5.ComputeHash(fileData);
    string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
    return result;
}
 

Ilant

Client
Регистрация
25.12.2015
Сообщения
6
Благодарностей
0
Баллы
1
Качаете фотку, далее выполняете с ней код:

Код:
using (System.IO.FileStream fs = new System.IO.FileStream(@"D:\1.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
    System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
    byte[] fileData = new byte[fs.Length];
    fs.Read(fileData, 0, (int)fs.Length);
    byte[] checkSum = md5.ComputeHash(fileData);
    string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
    return result;
}
Спасибо, то что нужно
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 375
Благодарностей
2 042
Баллы
113
ну так отблагодарите человека лайком
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
Здравствуйте, как сделать чтоб этот код брал путь к файлу из переменной
  1. using (System.IO.FileStream fs = new System.IO.FileStream(@"D:\1.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read))
  2. {
  3. System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
  4. byte[] fileData = new byte[fs.Length];
  5. fs.Read(fileData, 0, (int)fs.Length);
  6. byte[] checkSum = md5.ComputeHash(fileData);
  7. string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
  8. return result;
  9. } если делаю так к примеру: @"{-Project.Directory-}\img\{-Variable.login-}.png" то в логе:1.jpg
 
Регистрация
08.07.2015
Сообщения
2 848
Благодарностей
712
Баллы
113
Здравствуйте, как сделать чтоб этот код брал путь к файлу из переменной
  1. using (System.IO.FileStream fs = new System.IO.FileStream(@"D:\1.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read))
  2. {
  3. System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
  4. byte[] fileData = new byte[fs.Length];
  5. fs.Read(fileData, 0, (int)fs.Length);
  6. byte[] checkSum = md5.ComputeHash(fileData);
  7. string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
  8. return result;
  9. } если делаю так к примеру: @"{-Project.Directory-}\img\{-Variable.login-}.png" то в логе:Посмотреть вложение 17012
потому что вы в С# пытаетесь вставить макрос а нужно вставлять это "project.Variables["get"].Value"
В кубике С# правой кнопкой по полю, там будет "установить значение переменной".
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
потому что вы в С# пытаетесь вставить макрос а нужно вставлять это "project.Variables["get"].Value"
В кубике С# правой кнопкой по полю, там будет "установить значение переменной".
пробовал тогда вообще ошибка компиляции кода
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
если пишу так @"{-Project.Directory-}\img\name.png" - тогда все ок
 
Регистрация
08.07.2015
Сообщения
2 848
Благодарностей
712
Баллы
113
пробовал тогда вообще ошибка компиляции кода
потому что нужно так (System.IO.FileStream fs = new System.IO.FileStream(project.Variables["get"].Value, System.IO.FileMode.Open, System.IO.FileAccess.Read))

если пишу так @"{-Project.Directory-}\img\name.png" - тогда все ок
можно и так если работает!
Версия РМ старая да ? )))
В новой так небудет наверное работать )
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
(System.IO.FileStream fs = new System.IO.FileStream(project.Variables["get"].Value, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] fileData = new byte[fs.Length];
fs.Read(fileData, 0, (int)fs.Length);
byte[] checkSum = md5.ComputeHash(fileData);
string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
return result;
} так тоже ошибка компиляции кода, версия 5.9.9.1 мне нужно подставлять название с переменной, name.png не подходит
 
Регистрация
08.07.2015
Сообщения
2 848
Благодарностей
712
Баллы
113
(System.IO.FileStream fs = new System.IO.FileStream(project.Variables["get"].Value, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] fileData = new byte[fs.Length];
fs.Read(fileData, 0, (int)fs.Length);
byte[] checkSum = md5.ComputeHash(fileData);
string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
return result;
} так тоже ошибка компиляции кода, версия 5.9.9.1 мне нужно подставлять название с переменной, name.png не подходит
а переменную 'get' я чтоли создавать буду?
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
не знаю почему но не работает( переменные все есть, значения в них тоже есть, файл существует...
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
точнее значение есть в переменной гет
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
вот такая картина 1.jpg
 
Регистрация
08.07.2015
Сообщения
2 848
Благодарностей
712
Баллы
113
теперь возьми вот этот код скопируй и вставь снова себе в кубик С#

C#:
using (System.IO.FileStream fs = new System.IO.FileStream(project.Variables["get"].Value, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
    System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
    byte[] fileData = new byte[fs.Length];
    fs.Read(fileData, 0, (int)fs.Length);
    byte[] checkSum = md5.ComputeHash(fileData);
    string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);
    return result;
}
 
  • Спасибо
Реакции: vinznsk и kul0n

kul0n

Client
Регистрация
10.03.2016
Сообщения
97
Благодарностей
36
Баллы
18
спасибо друг, ты очень помог, так понимаю что что проблем был в этом месте?1.jpg
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)