使用mechanize运行没有输入字段名称的搜索表单

时间:2015-11-10 13:57:50

标签: ruby nokogiri mechanize

我有一个存储在数据库中的网球运动员列表。我想使用mechanize来抓取atpworldtour.com网站以获取有关这些玩家的信息。搜索表单位于主页上,我可以通过以下方式轻松访问:

<div id='titleSection'>
  <div class='title-inner right quarter-width'>
    <form action='destroy.php' method='POST' id="button1">
        <button>Log Out</button>
    </form>
  </div>
  <div class='title-inner left quarter-width'>
    <!--nothing-->
  </div>
  <div class='title-inner center half-width'>
        <h1 class='centered-text'>Title</h1>
  </div>
</div>

但输入字段没有名称。这是搜索表单的标记:

$(document).ready(function() {
    var OuterHeight = $('#titleSection').height();
    var InnerHeight = $('#button1').height();
    var TopMargin = (OuterHeight-InnerHeight)/2;
    $('#button1').css('margin-top', TopMargin);   
});

我试图搜索无法访问字段的方法并遇到these two个问题,但他们都使用agent = Mechanize.new url = "http://www.atpworldtour.com" page = agent.get(url) form = page.form() 方法,我认为这是特定的python?它无论如何都会给我<form id="siteSearch" class="site-search"> <input type="search" placeholder="Search Players and Tournaments" class="search"> <button id="closeSearch" type="button" class="close-search"></button> <div class="search-partner"><span> </span><img alt="" src=""></div> </form> 错误。

我还查看了this question,还查看了find_control的{​​{3}},并提出了:

undefined method 'find_control'

尝试打印搜索字段的当前值以查看其是否有效但field_with返回pp form.field_with(:class => "search").value

我是以错误的方式来做这件事的吗?如果有人能指出我走向正确的道路至少提交搜索我会非常感激。

0 个答案:

没有答案