Получить 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 450
Благодарностей
1 880
Баллы
113

Ilant

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

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
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 450
Благодарностей
1 880
Баллы
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 379
Благодарностей
2 039
Баллы
113
ну так отблагодарите человека лайком
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
85
Благодарностей
14
Баллы
8
Здравствуйте, как сделать чтоб этот код брал путь к файлу из переменной
  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
Сообщения
85
Благодарностей
14
Баллы
8
потому что вы в С# пытаетесь вставить макрос а нужно вставлять это "project.Variables["get"].Value"
В кубике С# правой кнопкой по полю, там будет "установить значение переменной".
пробовал тогда вообще ошибка компиляции кода
 

kul0n

Client
Регистрация
10.03.2016
Сообщения
85
Благодарностей
14
Баллы
8
если пишу так @"{-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
Сообщения
85
Благодарностей
14
Баллы
8
(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
Сообщения
85
Благодарностей
14
Баллы
8

kul0n

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

kul0n

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

kul0n

Client
Регистрация
10.03.2016
Сообщения
85
Благодарностей
14
Баллы
8
вот такая картина 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
Сообщения
85
Благодарностей
14
Баллы
8
спасибо друг, ты очень помог, так понимаю что что проблем был в этом месте?1.jpg
 

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