2012-07-22 8 views
6

मैं बस आज सुबह Nokogiri उपयोग शुरू कर दिया है और मैं कैसे एक साधारण कार्य को करने की सोच रहा हूँ:नोकोगिरी: आईडी द्वारा एक div कैसे ढूंढें और देखें कि इसमें क्या टेक्स्ट है?

<div id="verify" style="display:none"> site_verification_string </div>

मैं अपने कोड कुछ देखना चाहते हैं: मैं सिर्फ इस तरह एक div के लिए एक वेबपेज खोज करने की आवश्यकता इस तरह:

require 'nokogiri' 
require 'open-uri' 

url = h(@user.first_url) 
doc = Nokogiri::HTML(open(url)) 
if #SEARCH_FOR_DIV#.text == site_verification_string 
    @user.save 
end 

तो मुख्य सवाल यह है कि, मैं नोकोगिरी का उपयोग करके उस div की खोज कैसे करूं?

किसी भी मदद की सराहना की जाती है।

उत्तर

12
html = <<-HTML 
    <html> 
    <body> 
     <div id="verify" style="display: none;">foobar</div> 
    </body> 
    </html> 
HTML 
doc = Nokogiri::HTML html 
puts 'verified!' if doc.at_css('[id="verify"]').text.eql? 'foobar' 
1

अपनी आईडी के आधार पर एक तत्व आप आईडी के साथ एक div को खोजने के लिए .at_css("element#id")

उदाहरण उपयोग कर सकते हैं पाने के लिए एक आसान तरीका के लिए "सत्यापित"

html = Nokogiri::HTML(open("http://example.com")) 
puts html.at_css("div#verify") 

यह आपको div मिल जाएगा और इसमें सभी तत्व हैं

संबंधित मुद्दे