使用Selenium IDE,我试图使用带有部分ID和元素标题的XPath单击网页表格中的按钮.我正在使用的XPath是:
xpath=//*[contains(@id, 'ctl00_btnAircraftMapCell')]//*[contains(@title, 'Select Seat')]
Run Code Online (Sandbox Code Playgroud)
这就是我试图点击的按钮示例的整个html代码:
<li id="ctl00_MainContent_repAircraftMap_ctl20_repAircraftMapRow??_ctl00_liAircraftMap??Cell" class="">
<a id="ctl00_MainContent_repAircraftMap_ctl20_repAircraftMapRow??_ctl00_btnAircraftMa??pCell" href="javascript:void(0)" seatnumber="20A" mapbindattribute="1124" title="Select Seat 20A" onclick="SeatClick(1124);"></a>
</li>
Run Code Online (Sandbox Code Playgroud)
我错误地构建了这个吗?它不起作用!
到目前为止,我能够通过将这些字符串与已知的用户代理进行匹配来检测用户代理字符串列表中的机器人,但我想知道使用php有什么其他方法可以做到这一点,因为我正在使用此方法检索比预期更少的机器人.
我还想了解如何检测浏览器或机器人是否使用用户代理字符串欺骗另一个浏览器.
任何建议表示赞赏.
编辑:这必须使用包含以下行的日志文件来完成:
129.173.129.168 - - [11/Oct/2011:00:00:05 -0300]"GET /cams/uni_ave2.jpg?time=1318302291289 HTTP/1.1"200 20240"http://faculty.dentistry.dal.ca /loanertracker/webcam.html""Mozilla/5.0(Macintosh; U; PPC Mac OS X 10.4; en-US; rv:1.9.2.23)Gecko/20110920 Firefox/3.6.23"
这意味着除了访问时间之外,我无法检查用户行为.
我正在制作一个每秒至少需要截屏24张的程序.目前使用下面的代码我每个~94毫秒只得到1,所以大约每秒10.
我不想使用任何第三方库,因为我试图尽可能地保持它,但如果我的性能会有显着提高,我愿意.我也试图让这个平台保持独立,但同样,如果它真的会有显着的性能提升,我愿意将它限制在Windows中.
编辑:我现在也尝试了两种不同的方式; 使用在oracles网站上找到的片段以及下面评论中指出的片段.所有三个大约在同一时间,2.1-2.2百纳秒,这是非常低效的.
public abstract class Benchmark {
private final int iterations;
public Benchmark(int iterations) {
this.iterations = iterations;
}
public abstract void logic();
public void start() {
long start = System.nanoTime();
for (int iteration = 0; iteration < iterations; iteration++) {
long iterationStart = System.nanoTime();
logic();
System.out.println("iteration: " + iteration + " took: " + (System.nanoTime() - iterationStart) + " nanoseconds.");
}
long total = (System.nanoTime() - start);
System.out.println(iterations + " iterations took: " + total + " …Run Code Online (Sandbox Code Playgroud) 我正在尝试从我的Java程序向游戏模拟器发送键盘命令,我知道如何设置process从processbuilder并运行该过程.
但是,我仍然无法从我的发送过程键盘命令Robot.
一个InputStream不会有太大的帮助,因为我需要发送keyEvents,如按"Y"键,并相应地具有模拟器响应.
以下代码捕获屏幕:
import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
public class capture{
public static void main(String args[]) {
try {
Dimension size = Toolkit.getDefaultToolkit().getScreenSize();
Robot robot = new Robot();
BufferedImage img = robot.createScreenCapture(new Rectangle(size));
} catch(Exception e) {
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法,只捕获屏幕的所需部分(例如矩形,从一个x,y点到另一个)?
通过java机器人类按特殊字母(土耳其语等)我有问题.我有一种按键的方法,可以作为alt + keycode.我无法将一些特殊字母转换为当前键码.那我怎么解决呢 感谢名单
例如:
KeyStroke ks = KeyStroke.getKeyStroke('ö', 0);
System.out.println(ks.getKeyCode());
Output : 246
// So alt+0246='ö'
//but if I convert '?' to keycode
//Output is 351 . So alt+351= '_' and alt+0351= '_'
//What is the Correct combination for '?'. same for '?', '?','?', '?', '?', '?', '?', '?'
Run Code Online (Sandbox Code Playgroud)
按键:
public void altNumpad(int... numpadCodes) {
if (numpadCodes.length == 0) {
return;
}
robot.keyPress(VK_ALT);
for (int NUMPAD_KEY : numpadCodes) {
robot.keyPress(NUMPAD_KEY);
robot.keyRelease(NUMPAD_KEY);
}
robot.keyRelease(VK_ALT);
}
Run Code Online (Sandbox Code Playgroud) [更新2013]
我找不到具有针对WordPress的robots.txt文件格式的权威页面.我保证在我的网站上保留一个,但我想在堆栈溢出这里.
如果您知道自己在做什么,请在此处查看当前草稿:
其他人对此发表评论:
User-agent: *
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /wp-content/themes/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Sitemap: http://domain.com/sitemap.xml
Crawl-delay: 4
Run Code Online (Sandbox Code Playgroud) 我正在尝试在java中创建一个程序,它使用机器人每隔几秒钟按一个特定的键.它有一个带有开始和停止按钮的GUI和一个告诉它进入哪个状态的标签.到目前为止我已经完成了所有工作,除了当我点击"开始"它运行我的机器人功能的循环(这是无限的)它不像我想的那样启用停止按钮.我知道无限循环放置的地方有些愚蠢,但我不确定如何让它正常工作.
我不做很多java工作,这只是一个有趣的事情,我想尝试但是被困住了一段时间.任何帮助表示赞赏.
import java.awt.AWTException;
import java.awt.FlowLayout;
import java.awt.Robot;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Main extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private static boolean running = false;;
private JButton start_button;
private JButton stop_button;
private JLabel tl;
private static int i = 0;
Robot robot;
void start() {
JFrame frame = new JFrame("Helper");
tl = new JLabel("Running: " + running);
start_button = new JButton("Start");
stop_button = …Run Code Online (Sandbox Code Playgroud) 最近,我的网站遇到了许多来自自动生成的菜单链接返回未找到页面的软错误.但它最终将填充内容超时,所以我想暂时禁止搜索引擎抓取这些页面.
(例如PSP> Kingdom Hearts> Cheats.它会返回页面,上面写着"抱歉没有作弊"的消息.)
你们认为这会有用吗?
编辑:我已经从网站上删除了这些链接,但搜索引擎已经被抓取并返回了软404错误.
只是为了好玩,我试图取代:
if (set1.add(x) == false)
{
set2.add(x);
}
Run Code Online (Sandbox Code Playgroud)
有:
set1.add(x) || set2.add(x);
Run Code Online (Sandbox Code Playgroud)
但是,Eclipse抱怨说:
Syntax error on token "||", invalid AssignmentOperator
The left-hand side of an assignment must be a variable
Run Code Online (Sandbox Code Playgroud)
任何人都可以对这些错误消息有所启发吗?他们对我没有多大意义.
java ×6
awtrobot ×5
robots.txt ×2
bots ×1
class ×1
grammar ×1
html ×1
image ×1
keycode ×1
keyevent ×1
performance ×1
php ×1
process ×1
screen ×1
screenshot ×1
selenium ×1
selenium-ide ×1
seo ×1
spoof ×1
swing ×1
user-agent ×1
web-crawler ×1
wordpress ×1
xpath ×1