2009-08-05 2 views

risposta

14

Chris, provate questo e fammi sapere se funziona:

doc = Nokogiri::HTML(page) 
el = doc.xpath("//div[@id='spam[500]']").first 

Il problema è che non è possibile accedervi tramite CSS (anche nel browser). Prova a impostare alcuni attributi CSS per "spam [500]" e non verranno applicati. È comunque possibile accedere tramite xpath, come mostrato sopra.

+0

Funziona. Grazie. –

1

Il vero problema qui è che i personaggi [e] sono illegali in un attributo id HTML4 (o XML) - guardare il seguente:

http://www.w3.org/TR/html401/types.html#type-name

(per la definizione normativa del l'attributo id guarda www.w3.org//TR/html401/struct/global.html#adef-id)

1

si può anche fare in questo modo

el = doc.xpath("id(spam[500])").first 

per gli elementi di ettari è possibile chiamarli direttamente tramite id perché è sempre univoco.

per trovare xpaths, aggiungere un plugin 'xpath checker' a firefox. Aiuta molto e molto facilmente