我正在创建一个“通用”网络抓取工具,它将抓取任何具有条目列表的页面。我想从配置中驱动它应该提取的标签。
具有以下配置的示例:
{
name : "price",
valueJQueryExpression : ".mt9 > .mt7.b"
},
...我正在解析以下方式:
const $ = require('cheerio');
let jquery = getQuery("price");
let keys = $(jquery);
但是,我有更棘手的解析器要处理,例如。那个:
let location = $('.mt9 > .b', html).not('.mt5').not('.mt7').text().trim()
在这种情况下,我认为使用 aneval()并在配置中传递完整的表达式。但是,由于安全问题,不建议这样做。
你有什么关于以不同方式处理这个问题的建议吗?
狐的传说
慕姐8265434
相关分类