我目前正在使用node.js来刮取保存为.htm的word文档,然后将其重写为shell。
我创建了< li>标签,但这些word文档的保存方式我必须通过寻找margin-left来寻找它们。像这样:
$("p","td:nth-child(2)").each(function(){
var marginLeft = this.css("margin-left");
}
到目前为止,我的工作非常好。我遇到的唯一麻烦就是风格实际上是通过一个类来应用的。
这是冲突的类:
p.RNBullet1, li.RNBullet1, div.RNBullet1{
mso-style-name:"*RN Bullet1";
mso-style-unhide:no;
mso-style-link:"*RN Bullet1 Char";
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.2in;
text-indent:-.2in;
mso-pagination:widow-orphan;
mso-list:l12 level1 lfo5;
font-size:11.0pt;
font-family:"Arial","sans-serif";
mso-fareast-font-family:"Times New Roman";
}
它将返回未定义的,当它显然有值时。
任何对此的见解都会对我在这里疯狂有所帮助。
答案 0 :(得分:3)
正如vkurchatkin上面指出的,cheerio只是遍历DOM。它没有阅读样式表
这就是答案:https://npmjs.org/package/juice
基本上我装了cheerio用什么果汁回来了。
Juice会将styes变成内联。