Конвертировать HTML в MHTML – Aspose.HTML Cloud SDK Конвертация между форматами требуется по разным причинам: для работы в привычном удобном формате или для использования разных форматов для конкретных задач. Aspose.HTML Cloud предоставляет самый простой способ конвертировать документы HTML в формат MHTML с высоким качеством, легко и быстро.
MHTML объединяет HTML и связанные с ним ресурсы (изображения, таблицы стилей и сценарии) в один файл. Преобразование HTML в MHTML упрощает архивирование и совместное использование веб-контента за счет объединения всех связанных ресурсов в один автономный файл. Более того, преобразование HTML в MHTML предлагает такие преимущества, как просмотр в автономном режиме, сохранение веб-контента, вложений электронной почты, соблюдение нормативных требований и т. д.
Эта статья содержит примеры кода, объясняющие, как преобразовать HTML в MHTML с помощью доступных SDK. Мы рассмотрим различные сценарии преобразования HTML в MHTML: из хранилища в хранилище, из локального файла в локальную файловую систему и из Интернета в локальную файловую систему.
Примеры преобразования HTML в MHTML Aspose.HTML Cloud позволяет вам получить HTML-документ из места хранения по его имени, из URL-адреса или локального файла на вашем диске, преобразовать его в указанный формат и сохранить в хранилище или на локальном диске. В следующих примерах кода показано, как программно преобразовать HTML в MHTML для различных случаев.
Пример 1. Преобразование HTML в MHTML с параметрами сохранения по умолчанию Рассмотрим пример преобразования локального файла HTML в MHTML и сохранения результата по локальному пути.
C# В следующем примере демонстрируется самый простой способ преобразования HTML в MHTML с применением языка C#. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" ).ConvertApi ;
3
4 // Convert from HTML file to MHTML file
5 var result = await api.ConvertAsync ("test.html" , "test.mhtml" );
Java В следующем примере показано, как преобразовать HTML в MHTML с использованием языка Java. Вы можете загрузить Java SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromLocalFile ("input.html" )
8 .saveToLocal ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать HTML в MHTML с применением языка C++. Локальный HTML преобразуется в MHTML и сохраняется по локальному пути.
Copy 1 // Get current directory
2 std ::string cur_dir (argv[ 0] );
3 int pos = cur_dir.find_last_of ("/\\" );
4 cur_dir = cur_dir.substr (0, pos + 1); // Include the last slash
5 std ::wstring w_cur_dir (cur_dir.begin (), cur_dir.end ());
6
7 const utility::string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
8 const utility::string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
9 const utility::string_t basePath = L"https://api.aspose.cloud/v4.0" ;
10 const utility::string_t authPath = L"https://api.aspose.cloud/connect/token" ;
11
12 // Create configuration for authorization
13 std ::shared_ptr< ApiConfiguration> apiConfig (new ApiConfiguration(clientId, clientSecret, basePath, authPath));
14
15 // Create client from configuration
16 std ::shared_ptr< ApiClient> apiClient (new ApiClient(apiConfig));
17
18 // Create ConversionApi
19 std ::shared_ptr< ConversionApi> api = std::make_shared< ConversionApi> (apiClient);
20
21 // File name for conversion
22 utility ::string_t src = w_cur_dir + L"test.html" ;
23 utility ::string_t dst = w_cur_dir + L"result.mhtml" ;
24
25 //Conversion
26 auto result = api-> convertLocalToLocal(src, dst);
27
28 // Check the result file
29 auto re = result-> getFile();
30 std ::ifstream f (re.c_str ());
31 if (! f.good ())
32 {
33 throw std::runtime_error("Conversion failed" );
34 }
Python В следующем примере показано, как преобразовать HTML в MHTML на Python. Вы можете скачать Python SDK из
репозитория GitHub .
Copy 1 from asposehtmlcloud.configuration import Configuration
2 from asposehtmlcloud.api .html_api import HtmlApi
3 from asposehtmlcloud.api_client import ApiClient as Client
4 from asposehtmlcloud.rest import ApiException
5
6 configuration = Configuration(apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client(configuration)
12 html_api = HtmlApi(client)
13
14 try :
15 res = html_api.convertApi .convert_local_to_local (input_file= "test.html" , output_file= "test.mhtml" )
16 except ApiException as ex:
17 print("Exception" )
18 print("Info: " + str(ex))
19 raise ex
PHP В следующем примере показано, как преобразовать HTML в MHTML на PHP. Вы можете скачать PHP SDK из
репозитория GitHub .
Copy 1 <? php
2 require_once (__DIR__ . ' / vendor/ autoload.php ' );
3
4 $conf = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new Client\ Invoker\ Api\ HtmlApi($conf);
13
14 $src = ' input.html ' ;
15 $dst = ' output.mhtml ' ;
16
17 try {
18 // Request to server Api
19 $result = $api_html-> convertLocalToLocal($src, $dst);
20 print_r($result);
21 } catch (Exception $e) {
22 echo ' Exception when calling HtmlApi-> convertLocalToLocal: ' , $e-> getMessage(), PHP_EOL;
23 }
24
25 ?>
Ruby В следующем примере показано, как преобразовать HTML в MHTML на Ruby. Вы можете скачать Ruby SDK из
репозитория GitHub .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https://purchase.aspose.cloud/pricing
7
8 CONFIG = {
9 "basePath" :"https://api.aspose.cloud/v4.0" ,
10 "authPath" :"https://api.aspose.cloud/connect/token" ,
11 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
12 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
13 "debug" :true
14 }
15
16 api_instance = AsposeHtml::HtmlApi.new CONFIG
17
18 src = "test.html" # String | Full path to the input file.
19 dst = "test.mhtml" # String | Full path to the result.
20
21 begin
22 # Convert the document from the local file and save result to the local file.
23 result = api_instance.convert_local_to_local (src, dst)
24 p result
25 rescue AsposeHtml::ApiError => e
26 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
27 end
Node.js В следующем примере показано, как преобразовать HTML в MHTML с помощью языка Node.js. Локальный HTML преобразуется в MHTML и сохраняется по локальному пути.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" :"https://api.aspose.cloud/v4.0" ,
7 "authPath" :"https://api.aspose.cloud/connect/token" ,
8 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" :"NodeJsWebkit"
11 };
12
13 var api = require(' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api.ConversionApi (conf);
17
18 var src = "/path/to/src/test.html" ; // {String} Source document.
19 var dst = "/path/to/dst/test.mhtml" ; // {String} Result document.
20 var opts = null ;
21
22 var callback = function(error, data, response) {
23 if (error) {
24 console.error (error);
25 } else {
26 console.log (data);
27 }
28 };
29
30 conversionApi.convertLocalToLocal (src, dst, opts, callback);
Swift В следующем примере показано, как преобразовать HTML в MHTML на Swift. Вы можете скачать Swift SDK из
репозитория GitHub .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 static let fm = FileManager.default
7 let resourceDir = fm.homeDirectoryForCurrentUser .appendingPathComponent ("Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/Resources" )
8 let resultDir = fm.homeDirectoryForCurrentUser .appendingPathComponent ("Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
9
10 func url (forResource fileName: String) -> URL {
11 return resourceDir.appendingPathComponent (fileName)
12 }
13
14 func fileExist (name: String) -> Bool {
15 return FileManager.default .fileExists (atPath: name)
16 }
17
18 ClientAPI.setConfig (
19 basePath: "https://api.aspose.cloud/v4.0" ,
20 authPath: "https://api.aspose.cloud/connect/token" ,
21 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
22 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
23 debugging: true
24 )
25
26 let fileName = "test.html"
27 let format = "mhtml"
28 let src = url(forResource: fileName).absoluteString
29
30 let expectation = self.expectation (description: "testConvert to \(format)" )
31 let dst = resultDir.appendingPathComponent ("Output.\(format)" ).absoluteString
32 HtmlAPI.convertLocalToLocal (src: src, dst: dst, options: nil) { (data, error) in
33
34 guard error == nil else {
35 XCTFail("Error convert html to \(format)). Error=\(error!.localizedDescription)" )
36 return
37 }
38 let resultPath = data! .file !
39 XCTAssertTrue(fileExist(name: resultPath))
40 expectation.fulfill ()
41 }
42 self.waitForExpectations (timeout: 100.0 , handler: nil)
Java/Android В следующем примере показано, как преобразовать HTML в MHTML с помощью Java/Android. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromLocalFile ("input.html" )
8 .saveToLocal ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
CURL Загрузите локальный файл в хранилище с помощью
Storage API . Вызовите REST API для выполнения преобразования (в примере ниже). Загрузите результат преобразования обратно из хранилища с помощью
Storage API . В следующем примере показано, как преобразовать HTML в MHTML используя REST API. Выполните несколько обязательных шагов:
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/html-mhtml" \
3 - d "{'InputPath': '/testpage.html', 'OutputFile': 'test.mhtml'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Пример 2. Преобразование веб-страницы в MHTML Преобразование в MHTML помогает сохранить целостность и структуру веб-страниц, гарантируя сохранение всех элементов для будущего использования или распространения. Aspose.HTML Cloud позволяет вам получить веб-страницу по ее URL-адресу, преобразовать ее в другой формат и сохранить в локальную файловую систему. В приведенном ниже примере показано, как преобразовать веб-страницу в MHTML с параметрами преобразования по умолчанию.
C# В следующем примере показано, как преобразовать HTML в MHTML с применением языка C#. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" ).ConvertApi ;
3
4 // Convert HTML to MHTML using ConvertUrlAsync() method
5 var result = await api.ConvertUrlAsync ("https://example.com" , "test.mhtml" );
Java В следующем примере показано, как преобразовать HTML в MHTML с использованием языка Java. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете загрузить Java SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromUrl ("https://example.com" )
8 .saveToLocal ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать HTML в MHTML с помощью языка C++. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе.
Copy 1 // Get current directory
2 std ::string cur_dir (argv[ 0] );
3 int pos = cur_dir.find_last_of ("/\\" );
4 cur_dir = cur_dir.substr (0, pos + 1); // Include the last slash
5 std ::wstring w_cur_dir (cur_dir.begin (), cur_dir.end ());
6
7 const utility::string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
8 const utility::string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
9 const utility::string_t basePath = L"https://api.aspose.cloud/v4.0" ;
10 const utility::string_t authPath = L"https://api.aspose.cloud/connect/token" ;
11
12 // Create configuration for authorization
13 std ::shared_ptr< ApiConfiguration> apiConfig (new ApiConfiguration(clientId, clientSecret, basePath, authPath));
14
15 // Create client from configuration
16 std ::shared_ptr< ApiClient> apiClient (new ApiClient(apiConfig));
17
18 // Create ConversionApi
19 std ::shared_ptr< ConversionApi> api = std::make_shared< ConversionApi> (apiClient);
20
21 // File name for conversion
22 utility ::string_t src = L"https://example.com" ;
23 utility ::string_t dst = w_cur_dir + L"result.mhtml" ;
24
25 //Conversion
26 auto result = api-> convertUrlToLocal(src, dst);
27
28 // Check the result file
29 auto re = result-> getFile();
30 std ::ifstream f (re.c_str ());
31 if (! f.good ())
32 {
33 throw std::runtime_error("Conversion failed" );
34 }
Python В следующем примере показано, как преобразовать HTML в MHTML на Python. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете скачать Python SDK из
репозитория GitHub .
Copy 1 import os
2 from asposehtmlcloud.configuration import Configuration
3 from asposehtmlcloud.api .html_api import HtmlApi
4 from asposehtmlcloud.api_client import ApiClient as Client
5 from asposehtmlcloud.rest import ApiException
6
7 # Get keys from aspose site.
8 # There is free quota available.
9 # For more details, see https://purchase.aspose.cloud/pricing
10
11 configuration = Configuration(apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
12 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
13 basePath= "https://api.aspose.cloud/v4.0" ,
14 authPath= "https://api.aspose.cloud/connect/token" ,
15 debug= True)
16
17 client = Client(configuration)
18 html_api = HtmlApi(client)
19
20 try :
21 res = html_api.convert_url_to_local (input_file= "https://example.com" , output_file= "result.mhtml" )
22 if not os.path .exists (res.file ):
23 print(' conversion failed' )
24 except ApiException as ex:
25 print("Exception" )
26 print("Info: " + str(ex))
27 raise ex
PHP В следующем примере показано, как преобразовать HTML в MHTML на PHP. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете скачать PHP SDK из
репозитория GitHub .
Copy 1 <? php
2 require_once (__DIR__ . ' / vendor/ autoload.php ' );
3
4 $conf = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new Client\ Invoker\ Api\ HtmlApi($conf);
13
14 $src = ' https://example.com';
15 $dst = ' output.mhtml ' ;
16
17 try {
18 // Request to server Api
19 $result = $api_html-> convertUrlToLocal($src, $dst);
20 print_r($result);
21 } catch (Exception $e) {
22 echo ' Exception when calling HtmlApi-> convertUrlToLocal: ' , $e-> getMessage(), PHP_EOL;
23 }
24 ?>
Ruby В следующем примере показано, как преобразовать HTML в MHTML на Ruby. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете скачать Ruby SDK из
репозитория GitHub .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https://purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" :"https://api.aspose.cloud/v4.0" ,
11 "authPath" :"https://api.aspose.cloud/connect/token" ,
12 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" :true
15 }
16
17 api_instance = AsposeHtml::HtmlApi.new CONFIG
18
19 src = "https://example.com" # String | Input url.
20 dst = "test.mhtml" # String | Result file.
21
22 begin
23 # Convert the HTML file from the web and save result to the local file.
24 result = api_instance.convert_url_to_local (src, dst)
25 p result
26 rescue AsposeHtml::ApiError => e
27 puts "Exception when calling api_instance.convert_url_to_local: #{e}"
28 end
Node.js В следующем примере показано, как преобразовать HTML в MHTML на Node.js. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" :"https://api.aspose.cloud/v4.0" ,
7 "authPath" :"https://api.aspose.cloud/connect/token" ,
8 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" :"NodeJsWebkit"
11 };
12
13 var api = require(' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api.ConversionApi (conf);
17
18 var src = "https://example.com" ; // {String} Url for conversion.
19 var dst = "/path/to/dst/test.mhtml" ; // {String} Result document.
20 var opts = null ;
21
22 var callback = function(error, data, response) {
23 if (error) {
24 console.error (error);
25 } else {
26 console.log (data);
27 }
28 };
29
30 conversionApi.convertUrlToLocal (src, dst, opts, callback);
Swift В следующем примере показано, как преобразовать HTML в MHTML на Swift. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете скачать Swift SDK из
репозитория GitHub .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 static let fm = FileManager.default
7 let resultDir = fm.homeDirectoryForCurrentUser .appendingPathComponent ("Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
8
9 func fileExist (name: String) -> Bool {
10 return FileManager.default .fileExists (atPath: name)
11 }
12
13 ClientAPI.setConfig (
14 basePath: "https://api.aspose.cloud/v4.0" ,
15 authPath: "https://api.aspose.cloud/connect/token" ,
16 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
17 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
18 debugging: true
19 )
20
21 let format = "mhtml"
22 let src = "https://example.com"
23 let dst = resultDir.appendingPathComponent ("Output.\(format)" ).absoluteString
24
25 let expectation = self.expectation (description: "testConvert to \(format)" )
26
27 HtmlAPI.convertUrlToLocal (src: src, dst: dst, options: nil) { (data, error) in
28
29 guard error == nil else {
30 XCTFail("Error convert web site to \(format)). Error=\(error!.localizedDescription)" )
31 return
32 }
33 let resultPath = data! .file !
34 XCTAssertTrue(fileExist(name: resultPath))
35 expectation.fulfill ()
36 }
37 self.waitForExpectations (timeout: 100.0 , handler: nil)
Java/Android В следующем примере показано, как преобразовать HTML в MHTML с помощью Java/Android. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromUrl ("https://example.com" )
8 .saveToLocal ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
CURL Вызовите REST API для выполнения преобразования (в примере ниже). Загрузите результат преобразования обратно из хранилища с помощью
Storage API . В следующем примере показано, как преобразовать HTML в MHTML с помощью REST API. HTML берется из Интернета, преобразуется в MHTML и сохраняется в локальной файловой системе. Выполните несколько обязательных шагов:
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/html-mhtml" \
3 - d "{'InputPath': 'https://example.com', 'OutputFile': 'test.mhtml'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Преобразование HTML в MHTML происходит с использованием параметров преобразования по умолчанию : ширина и высота результирующего документа MHTML соответствуют формату A4, а все поля имеют нулевое значение.
Пример 3. Преобразование HTML в MHTML внутри облачного хранилища. Aspose.HTML Cloud позволяет получить HTML-файл из облачного хранилища и сохранить результат преобразования обратно в облачное хранилище.
C# В следующем примере показано, как преобразовать HTML в MHTML с применением языка C#. HTML-файл находится в облачном хранилище, преобразуется в MHTML и сохраняется обратно в облачное хранилище. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" ).ConvertApi ;
3
4 // Convert HTML to MHTML
5 var builder = new ConverterBuilder()
6 .FromStorageFile ("/test.html" )
7 .ToStorageFile ("/test.mhtml" );
8
9 var result = await api.ConvertAsync (builder);
Java В следующем примере показано, как преобразовать HTML в MHTML с использованием языка Java. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете загрузить Java SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromStorageFile ("input.html" )
8 .saveToStorage ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать HTML в MHTML с помощью языка C++. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище.
Copy 1 const utility::string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
2 const utility::string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
3 const utility::string_t basePath = L"https://api.aspose.cloud/v4.0" ;
4 const utility::string_t authPath = L"https://api.aspose.cloud/connect/token" ;
5
6 // Create configuration for authorization
7 std ::shared_ptr< ApiConfiguration> apiConfig (new ApiConfiguration(clientId, clientSecret, basePath, authPath));
8
9 // Create client from configuration
10 std ::shared_ptr< ApiClient> apiClient (new ApiClient(apiConfig));
11
12 // Create ConversionApi
13 std ::shared_ptr< ConversionApi> api = std::make_shared< ConversionApi> (apiClient);
14
15 // File name for conversion
16 utility ::string_t src = L"file/in/storage/index.html" ;
17 utility ::string_t dst = L"result/in/storage/result.mhtml" ;
18
19 //Conversion
20 auto result = api-> convertStorageToStorage(src, dst);
Python В следующем примере показано, как преобразовать HTML в MHTML на Python. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете скачать Python SDK из
репозитория GitHub .
Copy 1 from asposehtmlcloud.configuration import Configuration
2 from asposehtmlcloud.api .html_api import HtmlApi
3 from asposehtmlcloud.api_client import ApiClient as Client
4 from asposehtmlcloud.rest import ApiException
5
6 configuration = Configuration(apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client(configuration)
12 html_api = HtmlApi(client)
13
14 try :
15 res = html_api.convertApi .convert_storage_to_storage (input_file= "test.html" , output_file= "test.mhtml" ,
16 storage_name= None)
17 except ApiException as ex:
18 print("Exception" )
19 print("Info: " + str(ex))
20 raise ex
PHP В следующем примере показано, как преобразовать HTML в MHTML на PHP. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете скачать PHP SDK из
репозитория GitHub .
Copy 1 <? php
2 require_once (__DIR__ . ' / vendor/ autoload.php ' );
3
4 $configuration = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new HtmlApi($configuration);
13
14 $src = "FolderInStorage/test.html" ;
15 $dst = ' FolderInStorage/ test.mhtml ' ;
16 $options = null ;
17
18 try {
19 $result = $api_html-> convertStorageToStorage($src, $dst, null , $options);
20 print_r($result);
21 } catch (Exception $e) {
22 echo ' Exception when calling $api_html-> convertStorageToStorage: ' , $e-> getMessage(), PHP_EOL;
23 }
24 ?>
Ruby В следующем примере показано, как преобразовать HTML в MHTML на Ruby. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете скачать Ruby SDK из
репозитория GitHub .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https://purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" :"https://api.aspose.cloud/v4.0" ,
11 "authPath" :"https://api.aspose.cloud/connect/token" ,
12 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" :true
15 }
16
17 api_instance = AsposeHtml::HtmlApi.new CONFIG
18
19 src = "FolderInStorage/test.html" # String | Source file.
20 dst = "FolderInStorage/test.mhtml" # String | Result file.
21 storage = nil
22
23 begin
24 # Convert the file from the storage and save result to the storage.
25 result = api_instance.convert_storage_to_storage (src, dst, storage)
26 p result
27 rescue AsposeHtml::ApiError => e
28 puts "Exception when calling api_instance.convert_storage_to_storage: #{e}"
29 end
Node.js В следующем примере показано, как преобразовать HTML в MHTML на Node.js. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" :"https://api.aspose.cloud/v4.0" ,
7 "authPath" :"https://api.aspose.cloud/connect/token" ,
8 "apiKey" :"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" :"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" :"NodeJsWebkit"
11 };
12
13 var api = require(' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api.ConversionApi (conf);
17
18 var src = "FolderInStorage/test.html" ; // {String} Source document.
19 var dst = "FolderInStorage/test.mhtml" ; // {String} Result document.
20 var opts = null ;
21 var storage = null ;
22
23 var callback = function(error, data, response) {
24 if (error) {
25 console.error (error);
26 } else {
27 console.log (data);
28 }
29 };
30
31 conversionApi.convertStorageToStorage (src, dst, storage, opts, callback);
Swift В следующем примере показано, как преобразовать HTML в MHTML на Swift. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете скачать Swift SDK из
репозитория GitHub .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 ClientAPI.setConfig (
7 basePath: "https://api.aspose.cloud/v4.0" ,
8 authPath: "https://api.aspose.cloud/connect/token" ,
9 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
10 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
11 debugging: true
12 )
13
14 let src = "FolderInStorage/test.html"
15 let dst = "FolderInStorage/test.mhtml"
16
17 let expectation = self.expectation (description: "testConvert to mhtml" )
18
19 HtmlAPI.convertStorageToStorage (src: src, dst: dst, storage: nil, options: nil) { (data, error) in
20
21 guard error == nil else {
22 XCTFail("Error convert html to mhtml. Error=\(error!.localizedDescription)" )
23 return
24 }
25
26 let resultPath = data! .file !
27
28 StorageAPI.objectExists (path: resultPath, storageName: nil, versionId: nil) {(data, error) in
29 guard error == nil else {
30 XCTFail("Error objectExists exist. Error=\(error!.localizedDescription)" )
31 return
32 }
33
34 XCTAssertTrue(data! .exists )
35 XCTAssertFalse(data! .isFolder )
36 expectation.fulfill ()
37 }
38 }
39 self.waitForExpectations (timeout: 100.0 , handler: nil)
Java/Android В следующем примере показано, как преобразовать HTML в MHTML с помощью Java/Android. HTML-файл находится в облачном хранилище, конвертируется в MHTML и сохраняется обратно в облачное хранилище. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
Copy 1 Configuration.setBasePath ("https://api.aspose.cloud" );
2 Configuration.setAuthPath ("https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 .fromStorageFile ("input.html" )
8 .saveToStorage ("output.mhtml" );
9
10 OperationResult result = api.convert (builder);
CURL В следующем примере показано, как преобразовать HTML в MHTML с помощью REST API. HTML-файл находится в облачном хранилище, преобразуется в MHTML и сохраняется обратно в облачное хранилище.
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/html-mhtml" \
3 - d "{'InputPath': '/test.html', 'OutputFile': '/test.mhtml'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Смотрите также В статье
Параметры конвертации описан набор классов, представляющих параметры преобразования исходного документа на основе HTML в PDF, XPS и изображения. Облачный API Aspose.HTML вы можете вызвать непосредственно из браузера, открыв
Справочник по API . Aspose.HTML предлагает бесплатный онлайн
HTML в MHTML Конвертер , который конвертирует HTML в MHTML с высоким качеством, легкостью и скоростью. Просто загрузите файлы, конвертируйте их и получите результат через несколько секунд!