Estoy buscando una biblioteca que tenga una funcionalidad similar a la de Perl WWW::Mechanize, pero para PHP. Básicamente, debería permitirme enviar solicitudes HTTP GET y POST con una sintaxis simple, y luego analizar la página resultante y devolver en un formato simple todos los formularios y sus campos, junto con todos los enlaces en la página.¿Hay un equivalente PHP de WWW :: Mechanize de Perl?
que sé sobre CURL, pero es un poco demasiado barebones, y la sintaxis es bastante feo (toneladas de curl_foo($curl_handle, ...)
declaraciones
Aclaración:
quiero algo más alto nivel de las respuestas hasta . Por ejemplo ahora, en Perl, usted podría hacer algo como:
# 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');
para hacer lo mismo usando HTTP_Client o wget o curl serían mucho trabajo, que tendría que analizar manualmente t él busca los enlaces, encuentra el URL del formulario, extrae todos los campos ocultos, y así sucesivamente. La razón por la que estoy pidiendo una solución de PHP es que no tengo experiencia con Perl, y probablemente podría construir lo que necesito con mucho trabajo, pero sería mucho más rápido si pudiera hacer lo anterior en PHP.
Realmente * es * un puerto de eso: http://www.compasswebpublisher.com/php/www-mechanize-for-php pero es parte de algunos CMS y no hay descarga. – Gordon