Pregunta

Estoy intentando crear un WebArchive de una vista web. Tengo que trabajar, pero he encontrado un problema cuando trato y el trabajo con el contenido editado. Esto es lo que estoy haciendo actualmente:

[webView setEditable:YES];
WebDataSource *dataSource = [[webView mainFrame] dataSource];

WebArchive *archive = [[WebArchive alloc]
        initWithMainResource:[dataSource mainResource]
        subresources:nil
        subframeArchives:nil];

[[archive data] writeToFile:destinationPath atomically:YES];
[[webView mainFrame]
 loadRequest:[NSURLRequest
     requestWithURL:
     [NSURL fileURLWithPath:destinationPath]
     ]];

Las modificaciones que realice en el contenido de la vista Web no se almacenan en el WebArchive. ¿Es necesario para cometer mis cambios de nuevo en el archivo original con el fin para que esto funcione? Me gustaría que para guardar basado en el contenido que se encuentra en la vista Web. Cualquier ayuda sería apreciada. Gracias!

¿Fue útil?

Solución

Después de cavar por un tiempo, yo era capaz de averiguar la respuesta a mi propia pregunta. Aquí es cómo lo hice:

WebResource *dataSource = [[[[webView mainFrame] DOMDocument] webArchive] mainResource];

WebArchive *archive = [[WebArchive alloc]
       initWithMainResource:dataSource
       subresources:nil
       subframeArchives:nil];

[[archive data] writeToFile:@"output.webarchive" atomically:YES];

Espero que ayude a alguien.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top