while page <= last_page
pagination=("https://www.petsonic.com/snacks-huesos-para-perros/?=#{page}")
puts pagination
doc2=Nokogiri::HTML(Curl.get(pagination).body_str)
links=doc2.xpath('//a[@class="product-name"]/@href')
links.each do |url|
doc3=Nokogiri::HTML(Curl.get(url).body_str)
name1=doc3.xpath('//h1[@class="product_main_name"]').text
puts name1
end
page +=1
end
但是,由于某种原因,它从首页收集了4次信息,而不是从全部4页收集了信息。 可能是什么问题?
编辑:我在pagination=("https://www.petsonic.com/snacks-huesos-para-perros/?p=#{page}")
中错过了'p'
关闭案例
答案 0 :(得分:1)
这是一个简单的错字。只需替换
pagination=("https://www.petsonic.com/snacks-huesos-para-perros/?=#{page}")
使用
pagination=("https://www.petsonic.com/snacks-huesos-para-perros/?p=#{page}")
请注意查询参数中的p
。