2

我得到了表格:

<button type="submit" id="dostawa_zapisz" name="dostawa[zapisz]">Zapisz</button>
<input type="hidden" id="dostawa__token" name="dostawa[_token]" value="foo">

并想点击它:

//        $link = $crawler->filter('button:contains("Zapisz")')->link();
//        $link = $crawler->filterXPath('//*[@id="dostawa_zapisz"]')->link();
        $link = $crawler->selectButton('dostawa[zapisz]')->link();
        $crawler = $client->click($link);

但它显示:

“无法从“按钮”标签导航。”

(除此之外,是否有任何关于使用 DomCrawler 进行导航的文档

4

1 回答 1

2

那是您拥有的提交按钮,并且没有链接,因此您需要“按下”它(或提交)。

我在 Goutte Web Scraper 上苦苦挣扎,最终使用 Mink 进行功能测试。你可以阅读我的博客。它有一些有用的信息,另外,如果您关注 Goutte Web Scraper 链接,那里还有更多信息。

但我要指出的是,无头浏览器并不总是运行良好,尤其是如果您打算使用 Javascript。

对于您的代码,如果您打算使用它,您可能需要执行以下操作:

$form = $crawler->selectButton('Zapisz')->form();

然后填写表格并提交。

于 2016-10-24T16:26:32.773 回答