Есть ли PHP-эквивалент WWW :: Mechanize в Perl?

Я ищу библиотеку, которая имеет функциональность, аналогичную PerlWWW :: Mechanize, но для PHP. По сути, это должно позволить мне отправлять HTTP-запросы GET и POST с простым синтаксисом, а затем анализировать полученную страницу и возвращать в простом формате все формы и их поля вместе со всеми ссылками на странице.

Я знаю о CURL, но он слишком скромный, а синтаксис довольно уродливый (тонныcurl_foo($curl_handle, ...) заявления

Разъяснение:

Я хочу что-то более высокого уровня, чем ответы до сих пор. Например, в Perl вы можете сделать что-то вроде:

# navigate to the main page
$mech->get( 'http://www.somesite.com/' ); 

# follow a link that contains the text 'download this'
$mech->follow_link( text_regex => qr/download this/i );

# submit a POST form, to log into the site
$mech->submit_form(
    with_fields      => {
        username    => 'mungo',
        password    => 'lost-and-alone',
    }
);

# save the results as a file
$mech->save_content('somefile.zip');

Чтобы сделать то же самое, используя HTTP_Client или wget или CURL, было бы много работы, мне пришлось бы вручную анализировать страницы, чтобы найти ссылки, найти URL-адрес формы, извлечь все скрытые поля и так далее. Причина, по которой я спрашиваю решение PHP, заключается в том, что у меня нет опыта работы с Perl, и я мог бы, вероятно, построить то, что мне нужно, с помощью большой работы, но было бы намного быстрее, если бы я мог сделать вышеупомянутое в PHP.

Ответы на вопрос(9)

Ваш ответ на вопрос