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 に答える