xsl导入xml数据的问题
本帖最后由 qpwoeiruyt 于 2020-12-27 20:24 编辑请问如何从test.xml 中加粗的数值 添加到 test.xsl文件的属性值里面 ???谢谢
test.xsl文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="从xml中导入值!" height="从xml中导入值!" style="background-color:blue">
</svg>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
test.xml 文件:
<?xml version="1.0"?>
<?xml-stylesheet type="tsxt/xsl" href="projet.xsl"?>
<game
xmlns="http://www.w3school.com.cn"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="http://www.w3school.com.cn test.xsd">
<map>
<widthP>640</widthP>
<heightP>550</heightP>
</map>
</game> xsl = """
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="从xml中导入值!" height="从xml中导入值!" style="background-color:blue">
</svg>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
"""
xml= """
<?xml version="1.0"?>
<?xml-stylesheet type="tsxt/xsl" href="projet.xsl"?>
<game
xmlns="http://www.w3school.com.cn"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="http://www.w3school.com.cn test.xsd">
<map>
<widthP>640</widthP>
<heightP>550</heightP>
</map>
</game>
"""
from bs4 import BeautifulSoup
xslsoup = BeautifulSoup(xsl,"lxml")
xmlsoup = BeautifulSoup(xml,"lxml")
# print(soup.prettify())
xslsoup.svg.attrs["width"] = xmlsoup.widthp.string
xmlsoup = BeautifulSoup(xml,"xml")
xslsoup.svg.attrs["height"] = xmlsoup.heightP.string
print(xslsoup.svg.attrs["height"])
print(xslsoup.svg.attrs["width"]) 本帖最后由 weiter 于 2020-12-27 18:53 编辑
试一下JS的功能?
直接搞似乎不太可能
但是用JS获取xml里的数据然后转移到xsl里面应该是可以的
(没学过这个玩意也不知道JS能不能和这两个一起用) weiter 发表于 2020-12-27 11:51
试一下JS的功能?
直接搞似乎不太可能
但是用JS获取xml里的数据然后转移到xsl里面应该是可以的
似乎也不太行 xsl = """
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="从xml中导入值!" height="从xml中导入值!" style="background-color:blue">
</svg>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
"""
xml= """
<?xml version="1.0"?>
<?xml-stylesheet type="tsxt/xsl" href="projet.xsl"?>
<game
xmlns="http://www.w3school.com.cn"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="http://www.w3school.com.cn test.xsd">
<map>
<widthP>640</widthP>
<heightP>550</heightP>
</map>
</game>
"""
from bs4 import BeautifulSoup
xslsoup = BeautifulSoup(xsl,"lxml")
xmlsoup = BeautifulSoup(xml,"lxml")
# print(soup.prettify())
xslsoup.svg.attrs["width"] = xmlsoup.widthp.string
xmlsoup = BeautifulSoup(xml,"xml")
xslsoup.svg.attrs["height"] = xmlsoup.heightP.string
print(xslsoup.svg.attrs["height"])
print(xslsoup.svg.attrs["width"])
页:
[1]