I m 利用Nokogiri打开一个现有的html档案。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Foo</title>
</head>
<body>
<!-- stuff -->
</body>
</html>
然后,我改变这个机构的内容:
html_file = Nokogiri::HTML("path/to/html/file")
html_file.css( body ).first.inner_html = "new body content"
然后,我把这一新文件写到这样的档案中:
File.open("path/to/new/html/file", w ) {|f| f.write html_file}
And this is my resulting html file:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
new body content
</body></html>
我向您提出的问题是,如果能够告诉Nokogiri保存原始文件>>meta
标签,因为似乎在我与Nokogiri开放文件并试图将其书写到档案时,这些标签正在丢失/变。
任何帮助都会受到高度赞赏。 感谢!