我正在尝试使用 Nokogiri 获取特定页面所依赖的所有域/IP 地址。由于 Javascript 动态加载依赖项,它并不完美,但我很高兴尽最大努力获得:
- 图片网址 <img src="..."
- Javascript URL <script src="..."
- CSS 和任何 CSS url(...) 元素
- 框架和 IFrame
我还想关注任何 CSS 导入。
任何建议/帮助将不胜感激。该项目已经在使用 Anemone。
这就是我目前所拥有的。
Anemone.crawl(site, :depth_limit => 1) do |anemone|
anemone.on_every_page do |page|
page.doc.xpath('//img').each do |link|
process_dependency(page, link[:src])
end
page.doc.xpath('//script').each do |link|
process_dependency(page, link[:src])
end
page.doc.xpath('//link').each do |link|
process_dependency(page, link[:href])
end
puts page.url
end
end
代码会很棒,但我真的只是在指针之后,例如我现在发现我应该使用像css_parser这样的 css 解析器来解析任何 CSS 以查找图像的导入和 URL。