Rumah > php教程 > php手册 > PHP BOT实例代码

PHP BOT实例代码

WBOY
Lepaskan: 2016-06-13 09:28:42
asal
755 orang telah melayarinya

PHP BOT实例代码

   网上关于PHP BOT程序的实例还是很少的,前段时间也是业务需求,开始接触此类程序,很有意思。所谓BOT实际上是模拟GET或POST,去action一些程序,实现一些自动化处理,当然这个东西是双刃剑,可别使坏就好。

  PHP实现BOT有多种方式,个人比较喜欢HttpRequest,一来比较OO,而来编写简单方便。以下是class对应的function,还有一些examples。

  function可以直接点击进入PHP官方的API,有意的朋友进去逛逛;方法名称很直观,不多解释。。 Example #1 GET example

  代码

  $r = new HttpRequest('http://example.com/feed.rss', HttpRequest::METH_GET);

  $r->setOptions(array('lastmodified' => filemtime('local.rss')));

  $r->addQueryData(array('category' => 3));

  try {

  $r->send();

  if ($r->getResponseCode() == 200) {

  file_put_contents('local.rss', $r->getResponseBody());

  }

  } catch (HttpException $ex) {

  echo $ex;

  }

  ?>

  这个example模拟get去请求一个rss订阅器,还addQueryData这样的GET查询参数,然后执行send,发送此GET请求当getResponseCode是200时,也就是BOT成功时,把get请求返回的response的HTML存入本地的文件中。

  Example #2 POST example

  代码

  $r = new HttpRequest('http://example.com/form.php', HttpRequest::METH_POST);

  $r->setOptions(array('cookies' => array('lang' => 'de')));

  $r->addPostFields(array('user' => 'mike', 'pass' => 's3c|r3t'));

  $r->addPostFile('image', 'profile.jpg', 'image/jpeg');

  try {

  echo $r->send()->getBody();

  } catch (HttpException $ex) {

  echo $ex;

  }

  ?>

  这个example模拟POST去请求一个PHP文件,POST不是通过addQueryData这样的function,而是通过addPostFields来设置模拟的输入表单,然后执行send,把POSt请求返回的response的html echo到PHP当前页面中。

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan