nakarian/php-bot

此包已被废弃,不再维护。未建议替代包。

用于创建自动化机器人的PHP库

安装: 49

依赖: 0

建议者: 0

安全: 0

星星: 10

关注者: 5

分支: 1

开放问题: 0

语言:Tcl

dev-master 2016-01-23 14:09 UTC

This package is auto-updated.

Last update: 2022-11-17 23:30:17 UTC


README

用于创建自动化机器人的PHP库

这个项目是为了娱乐而制作的,欢迎改进:)

入门:composer

在项目文件夹下输入: $ composer require nawarian/php-bot dev-master

<?php
require_once 'vendor/autoload.php';

然后你就可以开始了:D

依赖

Linux

PHPBot可以直接与X11一起使用,使用xdotool发送命令。后续版本可能会增加对其他设备的支持。

使其独立于xdotool也会很好,像https://github.com/moriyoshi/php-Xlib这样的项目是一个很好的选择!但仍然不包括MS Windows实现...

Windows NT

现在PHPBot也可以在Windows NT平台上运行了。需要注意的是:它使用编译后的Python文件来访问User32.dll API。因此,一些杀毒软件可能会将ext/pyautogui/bin/dest文件夹下的文件标记为线程。

另外:命令行功能也显示了一些错误。

示例

所有命令单独返回一个 React\Promise\Promise

入门

你必须有一个 React\EventLoop\LoopInterface对象

$loop = React\EventLoop\Factory::create();

// Our code goes here!

$loop->run();

命令

作为命令,你可以将其视为交互命令,例如按钮点击、鼠标移动或点击...

请注意,所有命令只有在以下情况下才会运行:

  • 调用了start()方法
  • 在一个命令管道中

需要注意的是,命令管道将在你创建它的那一刻开始。

发送键盘命令

$dm = PHPBot\DesktopManager\Factory::create($loop);
$dm->keyboard()->type('Soooo cool!')->start()->then(function() {
    // Remember, every command returns a Promise!
    echo 'Just wrote it, dude! ;)';
});

发送指针命令

$dm = PHPBot\DesktopManager\Factory::create($loop);
$dm->pointer()->moveTo(0, 0)->start()->then(function() {
    // Remember, every command returns a Promise!
    echo 'Guess where your mouse pointer is!';
});

链式命令!

$dm = PHPBot\DesktopManager\Factory::create($loop);
$dm->createCommandPipeline(
    $dm->keyboard()->type('Soooo cool!'),         // 1
    $dm->keyboard()->sendKey(Keys::ENTER()),      // 2
    $dm->pointer()->moveTo(200, 200),             // 3
    $dm->pointer()->click(MouseButtons::LEFT())   // 4
)
->start()
->then(function() {
    // This also returns a Promise, resolved when it all finishes
    echo 'DONE!';
});

1, 2, 3和4将按此顺序执行!

更多示例

要查看更多示例,请查看examples/文件夹。

谢谢:)