2013-01-12 27 views

回答

4

看看優秀的jsdom,特別是this section,它展示瞭如何利用Node中的jQuery來抓取HTML文檔,從而使用jQuery提供的類CSS選擇器。

+0

嚴格來說,它利用jQuery它利用jQuery選擇器,所以[一些CSS3選擇器可能不可用](http://stackoverflow.com/questions/11745274/what-c​​ss3-selectors-does-jquery-真的支持,例如nth-last-child),除非本地選擇器API以某種方式得到支持... – BoltClock

+0

非常真實,現在正在修復。 – matehat

1

如果你所需要的只是一個允許你使用CSS選擇器的模塊,那麼我建議你看看sel

它支持CSS4(!)選擇器已經(至少部分),比Sizzle(jQuery的選擇器引擎)小,並且專注於一個任務,而不是以某種方式做所有事情。

+0

酷,我只是在尋找服務器端,但仍然很酷 –

+0

你可以發佈示例代碼?對我來說,'node -r sel'已經崩潰,因爲它引用了一個未定義的變量[第8行中的'document'](https://github.com/amccollum/sel/blob/addab28b60aa9ee217cfe9be63d58eb589b133c1/lib/sel.js#L8 )。這讓我相信sel只能用於瀏覽器,而不是node.js. – phihag

0

soupselect將是另一種選擇。我正在尋找一個像Ruby中的nokogiri一樣工作的nodejs庫。您不僅可以對文檔執行css查詢,還可以對html片段執行css查詢。 soupselect只是一個選擇器,所以你還需要htmlparser2進行解析。

3

Cheeriojs也是一個很好的選擇。它使用Jquery選擇器引擎。