怎么可能?
next_page = page.search "//div[@class='grID-dataset-pager']/span[@class='currentPage']/following-sibling::a[starts-with(@class,'page')][1]" next_page.click
问题是nokogiri元素没有点击功能.
我无法读取href(URL)并发送get请求,因为链接已定义onclick函数(无href属性).
如果那是不可能的,有哪些替代方案?
解决方法 >当您尝试仅查找一个元素时,请使用page.at
而不是 page.search
. >您可以使用css选择器语法使选择器更简单(更短):
next_page = page.at('div.grID-dataset-pager > span.currentPage + a[class^="page"]')
>如果您有Nokogiri元素,页面和mechanize对象来提供构造函数,您可以构建自己的link实例:
next_link = Mechanize::Page::link.new( next_page,mech,page )next_link.click
>但是,您可能不需要它,因为Mechanize#click
允许您提供一个字符串,其中包含要单击的锚点/按钮的文本.
# Assuming this link text is unique on the page,which I SUSPECT it ismech.click next_page.text
>完全重新阅读问题后进行编辑:但是,这一切都不会对您有所帮助,因为Mechanize不是Web浏览器!它没有JavaScript引擎,因此不会(不能)为您执行onclick.为此,您需要使用Ruby来控制真实的Web浏览器,例如使用Watir或Selenium或Celerity等.
总结以上是内存溢出为你收集整理的ruby – 单击与Mechanize的xpath链接全部内容,希望文章能够帮你解决ruby – 单击与Mechanize的xpath链接所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)