..
package t;
import java.awt.Robot;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.util.Random;
/**
* 参考
* https://blog.csdn.net/zone_four/article/details/85783207
* @author Administrator
*
*/
public class Util {
/**
* 从剪贴板中获取文本(粘贴)
*/
public String getClipboardString() {
// 获取系统剪贴板
Clipboard clipboard =java.awt.Toolkit. getDefaultToolkit().getSystemClipboard();
// 获取剪贴板中的内容
Transferable trans = clipboard.getContents(null);
if (trans != null) {
// 判断剪贴板中的内容是否支持文本
if (trans.isDataFlavorSupported(DataFlavor.stringFlavor)) {
try {
// 获取剪贴板中的文本内容
String text = (String) trans.getTransferData(DataFlavor.stringFlavor);
return text;
} catch (Exception e) {
e.printStackTrace();
}
}
}
return null;
}
/**
* 把文本设置到剪贴板(复制)
*/
public static void setClipboardString(String text) {
// 获取系统剪贴板
Clipboard clipboard = java.awt.Toolkit.getDefaultToolkit().getSystemClipboard();
// 封装文本内容
Transferable trans = new StringSelection(text);
// 把文本内容设置到系统剪贴板
clipboard.setContents(trans, null);
}
String lastOne="";
public void dothing(){
try{
Robot robot = new Robot();
//桌面
robot.keyPress(KeyEvent.VK_WINDOWS);
robot.keyPress(KeyEvent.VK_D);
robot.keyRelease(KeyEvent.VK_D);
robot.keyRelease(KeyEvent.VK_WINDOWS);
//延迟
robot.delay(400);
//将鼠标移到控制台区域
robot.mouseMove(152,754);
//按下和释放鼠标左键,选定工程
robot.mousePress(KeyEvent.BUTTON1_MASK);
robot.mouseRelease(KeyEvent.BUTTON1_MASK);
robot.delay(200);
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_1);
robot.keyRelease(KeyEvent.VK_1);
robot.keyRelease(KeyEvent.VK_CONTROL);
//
//将鼠标移到控制台区域
for(int i=0;i<60;i++){
robot.delay(1500);
int startx=1092;
int starty=293;
robot.mouseMove(startx,starty+130*0);
//
// robot.mouseMove(993*(i+122),520);
//点击
//robot.delay(22200);
//美团 探出图
robot.mousePress(KeyEvent.BUTTON1_MASK);
robot.mouseRelease(KeyEvent.BUTTON1_MASK);
robot.delay(100);
// //将文字复制到黏贴版
// robot.keyPress(KeyEvent.VK_CONTROL);
// robot.keyPress(KeyEvent.VK_SHIFT);
// robot.keyPress(KeyEvent.VK_C);
// robot.keyRelease(KeyEvent.VK_CONTROL);
// robot.keyRelease(KeyEvent.VK_SHIFT);
// robot.keyRelease(KeyEvent.VK_C);
// robot.delay(500);
String str=getClipboardString();
System.out.println("1start:"+startx+" y:"+starty+"\t content:"+getClipboardString());
// if(str.contains("<'")||str.contains("opacity")){
// str="null_"+System.currentTimeMillis()+".jpg";
// setClipboardString(str);
// robot.delay(1000);
// System.out.println("new content:"+getClipboardString());
// }
robot.mouseMove(1152,451);
robot.delay(100);
//选择文字
// robot.mouseMove(1142,459);
// robot.delay(10);
// robot.mousePress(KeyEvent.BUTTON1_MASK);
// robot.mouseRelease(KeyEvent.BUTTON1_MASK);
// robot.delay(200);
//
// robot.mouseMove(395,400);
// robot.delay(500);
// robot.mousePress(KeyEvent.BUTTON1_MASK);
// robot.mouseRelease(KeyEvent.BUTTON1_MASK);
//
// robot.delay(10);
// robot.mousePress(KeyEvent.BUTTON1_MASK);
// robot.mouseRelease(KeyEvent.BUTTON1_MASK);
// robot.delay(50);
// //开始复制文件
// robot.keyPress(KeyEvent.VK_CONTROL);
// robot.keyPress(KeyEvent.VK_C);
// robot.delay(50);
// robot.keyRelease(KeyEvent.VK_C);
// robot.keyRelease(KeyEvent.VK_CONTROL);
// robot.delay(200);
// //单机右键
//移动到图片上去
robot.mouseMove(1152,381);
robot.mousePress(InputEvent.BUTTON3_MASK);
robot.mouseRelease(InputEvent.BUTTON3_MASK);
//打开图片
robot.delay(100);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
//robot.mouseMove(1151,380);
// if(lastOne.equals(str)||str.contains("已存在")){
// robot.delay(100);
// robot.keyPress(KeyEvent.VK_N);
// robot.keyRelease(KeyEvent.VK_N);robot.delay(100);
// robot.mouseMove(1194,553);
// robot.delay(100);
// robot.mousePress(KeyEvent.BUTTON1_MASK);
// robot.mouseRelease(KeyEvent.BUTTON1_MASK);
// robot.delay(200);
// robot.mouseWheel(1);
// lastOne=str;
// System.out.println("RobotMeituan.dothing()");
//
// continue;
// }
// else
robot.delay(200);
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);
for(int u=0;u<10;u++){robot.delay(50);
int math=(int)(Math.random()*10);
if(math<2){
robot.keyPress(KeyEvent.VK_1);
robot.keyRelease(KeyEvent.VK_1);
}else if(math<3){
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);
}
else if(math<5){
robot.keyPress(KeyEvent.VK_B);
robot.keyRelease(KeyEvent.VK_B);
}else if(math<7){
robot.keyPress(KeyEvent.VK_0);
robot.keyRelease(KeyEvent.VK_0);
}else if(math<8){
robot.keyPress(KeyEvent.VK_C);
robot.keyRelease(KeyEvent.VK_C);
}else{
robot.keyPress(KeyEvent.VK_D);
robot.keyRelease(KeyEvent.VK_D);
}
}
robot.delay(100);
robot.keyPress(KeyEvent.VK_PERIOD);
robot.keyRelease(KeyEvent.VK_PERIOD);
robot.delay(100);
robot.keyPress(KeyEvent.VK_J);
robot.keyRelease(KeyEvent.VK_J);
robot.delay(100);
robot.keyPress(KeyEvent.VK_P);
robot.keyRelease(KeyEvent.VK_P);
robot.delay(100);
robot.keyPress(KeyEvent.VK_G);
robot.keyRelease(KeyEvent.VK_G);
// if(str.contains("<'")||str.contains("opacity")||lastOne.equals(str)||str.contains("<div")||str.contains("@800w")){
// break;
// //复制补了就 不改名字 或者名字一样
// }else{
// robot.delay(1000);
//// System.err.println("1a");
// robot.keyPress(KeyEvent.VK_CONTROL);
// robot.keyPress(KeyEvent.VK_V);
// robot.keyRelease(KeyEvent.VK_V);
// robot.keyRelease(KeyEvent.VK_CONTROL);
// }
// System.err.println("a");
// robot.delay(500);
//回车保存
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
robot.delay(300);
// robot.keyPress(KeyEvent.VK_ENTER);
// robot.keyRelease(KeyEvent.VK_ENTER);
// robot.delay(100);
// robot.keyPress(KeyEvent.VK_ESCAPE);
// robot.keyRelease(KeyEvent.VK_ESCAPE);
//
//关闭 窗口
robot.delay(100);
robot.mouseMove(1194,553);
robot.delay(100);
robot.mousePress(KeyEvent.BUTTON1_MASK);
robot.mouseRelease(KeyEvent.BUTTON1_MASK);
robot.delay(200);
// robot.delay(12500);
// robot.mousePress(KeyEvent.BUTTON2_MASK);
// robot.mouseRelease(KeyEvent.BUTTON2_MASK);
// break;
//下滑动
robot.mouseWheel(1);
lastOne=str;
}
System.out.println("RobotMeituan.dothing()end...");
robot.delay(100);
// // 这里是按下和释放alt键,这个键的功能是调用菜单
// robot.keyPress(KeyEvent.VK_ALT);
// robot.keyRelease(KeyEvent.VK_ALT);
// // ctrl+shift+F 格式化
// robot.keyPress(KeyEvent.VK_SHIFT);
// robot.keyPress(KeyEvent.VK_CONTROL);
// robot.keyPress(KeyEvent.VK_F);
// robot.keyRelease(KeyEvent.VK_SHIFT);
// robot.keyRelease(KeyEvent.VK_CONTROL);
// robot.keyRelease(KeyEvent.VK_F);
//
// robot.mouseMove(1300,600);
// robot.delay(1500);
// //鼠标滚轮
// robot.mouseWheel(100);
//
//// robot.mouseMove(300,300);
// robot.delay(1500);
// //单击右键
// robot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
// robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK);
}catch (Exception e) {
e.printStackTrace();
}
}
}