我一直试图抓住10个网站,我们正在建立一个网站,链接到原始网站,在node.js上使用cheerio,我们得到的问题是有些网站已经改变,现在使用ajax调用来带来他们的数据,我的问题是我们如何获取该信息,例如首先触发按钮点击然后获取DOM.
其次:相同的dom结构不是获取所有数据,它是检索一个页面的信息,而不是在具有相同DOM结构的另一个页面上获取元素.任何帮助,将不胜感激.
感谢致敬. 编辑1:相关代码
Run Code Online (Sandbox Code Playgroud)$('#ProductContent').filter(function(){ var price = undefined; var ukulele = false; var model = $(this).find('.ProductSubtitle').text().replace(/\n\s*/g,""); if(model.indexOf(/m/i) != 0){ var description = $(this).find('.RomanceCopy').text().replace(/\n\s*|\r/g,""); . .code removed for brevity and the variables present here are populated . //this children is populated only for one page. children = $(this).find('.SpecsColumn .SpecsTable table tbody').children('tr'); console.log('children: '+children.length) console.log(guitar_url); children.each(function(){ var key = $(this).children('td').first().text(); var value = $(this).children('td').last().text(); specs[key] = value; console.log(specs); });
编辑2:Cherios初始化
Run Code Online (Sandbox Code Playgroud)request(guitar_url,function(error,response,html){ if(!error){ var $ = cheerio.load(html); $("#content #right-content").filter(function(){..children and other variables …
我想在有人访问结构化的URL时在snort中生成一个事件
site/year2015.pdf
site/year2014.pdf
:
:
site/year2000.pdf
Run Code Online (Sandbox Code Playgroud)
由于多年来会添加更多的URL,而不是编写多个snort规则,我想到了使用PERC.规则写成.
alert tcp any any -> any any(msg:"PDF is being downloaded"; pcre:"(/.*site\/year\d\d\d\d\.pdf)/i"; sid: 100003; rev:3;)
Run Code Online (Sandbox Code Playgroud)
我在上面的规则中尝试了许多不同的方法来插入正则表达式,但总是无法解析它.正则表达式做得很好我想要它在这里做.整个事情开始失败,因为它没有启动规则未被解析的原因.
收到的错误是
Error: /etc/snort/rules/assignment.rules Line 3 => unable to parse pcre regex "(/.*site\/year\d\d\d\d\.pdf)/i"
Fatal Error Quitting..
Run Code Online (Sandbox Code Playgroud) 我编写了一个CSS文件来设置带有ID的div,在另一个带有Classes的div中.看起来像这样
div.class1.class2 > div#ID1{
Styling Rules
}Run Code Online (Sandbox Code Playgroud)
但ID1的DIV没有发生任何事情.非常感谢任何帮助,我无法更改HTML的结构或将其他ID或类应用于元素.
<div class="class1 class 2">
<div id="ID1"></div>
</div>Run Code Online (Sandbox Code Playgroud)