Я должен сохранить несколько base64 образов от веб-страницы до фактического GIF и файлов JPEG на моем жестком диске. Существует ли утилита там, которая может помочь мне? Я озирался, и или я не вижу один или не выяснил, как использовать тот правильно.
Другими словами, я надеюсь брать изображение, встроенное в эту ссылку на странице:
<img src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" class="info" id="ext-gen1128">
.. и сохраните его в файл на моем поле.Спасибо за помощь.
Я записал это, чтобы пойти другим путем (img к base64) для изображения URIs. Я уверен, что Вы могли инвертировать это для того, в чем Вы нуждаетесь.
#!/usr/bin/env python
import sys
import os
import base64
if(__name__ == '__main__'):
arglen = len(sys.argv)
if arglen > 1:
imgfile = open(sys.argv[1], 'rb').read()
b64img = base64.b64encode(imgfile)
file_name = os.path.splitext(sys.argv[1])
fname = file_name[0]
fext = file_name[1]
b64imgfile = open(fname + fext + '.txt', 'w')
for line in b64img:
b64imgfile.write(line)
print fname
print fext
print('done')
else:
print('No img file specified!')
*Вот некоторый код, который инвертирует вышеупомянутое. Единственный протест состоит в том, что необходимо знать, был ли это png, jpg, и т.д. Это должно быть в данных URI изображений в странице HTML Ваше получение по запросу их от "img src ='data:image/png; base64...". (Я принимаю png ниже), *
#!/usr/bin/env python
import sys
import os
import base64
if(__name__ == '__main__'):
arglen = len(sys.argv)
if arglen > 1:
b64file = open(sys.argv[1], 'rb').read()
imgData = base64.b64decode(b64file)
file_name = os.path.splitext(sys.argv[1])
fname = file_name[0]
fext = '.png'
imgFile = open(fname + fext, 'wb')
imgFile.write(imgData)
print('done')
else:
print('No file specified!')
Существует много инструментов там, которые могут помочь Вам декодировать base64. Как лучше всего загрузить, что-то как этот в основном зависит от того, как Вы добираетесь до него.
Не большая часть веб-трафика является base64, закодированным... в основном, потому что это не очень эффективно, и это нисколько не безопасно. (base64 не шифрование... оно просто затеняет данные для создания его не - человекочитаемым), Если можно получить необработанные потоковые данные к текстовому файлу или некоторые такой... существует несколько способов повторно собрать его. Кроме того, данные не будут содержать информацию о файле... т.е. имени файла, размере, ввести, и т.д.... it'l быть потоком данных... и Вам решать определить, каково это.
Шанс мы можем посмотреть на то, куда данные прибывают из?... это действительно помогло бы дать Вам более соответствующий ответ.
При сохранении веб-страницы от веб-браузера, это должно сохранить образы также. В IE Вы выбираете, сохраняют как веб-страница, завершенная. Изображения будут в подпапке и будут в jpg или png формате - соглашения о браузере с любым кодированием, используемым для передачи данных HTTP.
Я перешел к странице, на которую Вы указываете на с Chrome. Щелкните правой кнопкой по изображению, Осмотрите элемент... Мы переходим в <img>
тег с Base64-закодированным изображением Gif, но это - на самом деле простое 1x1 заполнитель.
Таким образом, мы можем перейти к вкладке Resources Инспектора (рядом с Элементами один), и мы видим изображения интереса в Base64-закодированном PNG.
Нажмите на data:image слева, Вы получаете детали о ресурсе, включая предварительный просмотр. Можно щелкнуть правой кнопкой по предварительному просмотру и сохранить образ...
Как рекомендуется, остерегайтесь разногласий по авторскому праву с этими изображениями...
Примечание: Я попробовал иначе: можно скопировать URL ресурсов и вставить их в простом файле HTML с <img src="<base64-encoded data>">
теги. Просмотрите файл HTML в хорошем браузере, и можно сохранить образы путем щелчка правой кнопкой по ним.