有相当于Perl的WWW :: Mechanize的PHP?

前端之家收集整理的这篇文章主要介绍了有相当于Perl的WWW :: Mechanize的PHP?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找一个功能类似于Perl的 WWW::Mechanize的库,但是对于PHP。基本上,它应该允许我使用简单的语法提交HTTP GET和POST请求,然后解析生成页面,并以简单的格式返回所有表单及其字段,以及页面上的所有链接

我知道CURL,但它有一点太准系统,语法很丑陋(吨curl_foo($ curl_handle,…)语句

澄清:

我想要的东西比答案更高级别到目前为止。例如,在Perl中,您可以执行以下操作:

  1. # navigate to the main page
  2. $mech->get( 'http://www.somesite.com/' );
  3.  
  4. # follow a link that contains the text 'download this'
  5. $mech->follow_link( text_regex => qr/download this/i );
  6.  
  7. # submit a POST form,to log into the site
  8. $mech->submit_form(
  9. with_fields => {
  10. username => 'mungo',password => 'lost-and-alone',}
  11. );
  12.  
  13. # save the results as a file
  14. $mech->save_content('somefile.zip');

使用HTTP_Client或wget或CURL做同样的事情将会是很多工作,我必须手动解析页面以找到链接,找到表单URL,提取所有隐藏的字段等等。我要求PHP解决方案的原因是我没有Perl的经验,我可以通过大量工作来构建我需要的,但是如果我可以在PHP中执行上述操作,会更快。

解决方法

SimpleTest的 ScriptableBrowser可以独立于测试框架使用。我已经使用它来进行大量的自动化工作。

猜你在找的Perl相关文章