我正在寻找要求您按下箭头按钮的页面内容,其中信息将通过jquery显示而不是加载新页面。由于需要点击按钮,我使用机械化来代替nokogiri。到目前为止我所拥有的是
url = "http://brokercheck.finra.org/Individual/Summary/1327992"
mechanize = Mechanize.new
page = mechanize.get(url)
button = page.at('.ArrowExpandDsclsr.faangledown')
new_page = mechanize.click(button)
new_page.at('#disclosuredetails')
看来new_page仍然没有显示包含新加载信息的页面。谁知道为什么会这样?
答案 0 :(得分:0)
你试图让机械化点击的按钮不是一个“常规”按钮,它有点动态。它在点击时使用javascript / ajax获取相关数据。
Mechanize不会呈现网页的DOM,也不提供让javascript与页面交互的方法。因此,根据javascript的功能,它不适合与动态页面进行交互。
对于此类情况,如果您希望通过ruby与其进行互动,我建议phantomjs,可以是独立的,也可以是capybara / poltergeist。