三楼是一种比较常用方法,但一般用于客户端软件,这里再给出一种方法:\x0d\x0a用java模拟post提交,代码比较长,你可以去网上搜索一下。核心内容如下:\x0d\x0a URL url = new URL(urlAddr); //urlAddr:网页登录页面的url地址\x0d\x0a conn = (HttpURLConnection)url.openConnection(); \x0d\x0a \x0d\x0a conn.setDoOutput(true); \x0d\x0a conn.setRequestMethod("POST"); \x0d\x0a conn.setUseCaches(false); \x0d\x0a conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); \x0d\x0a conn.setRequestProperty("Content-Length", String.valueOf(params.length())); \x0d\x0a conn.setDoInput(true); \x0d\x0a conn.connect(); \x0d\x0a \x0d\x0a OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8"); \x0d\x0a out.write(params.toString()); //params就是post的参数,形如username=abcdpass=1234\x0d\x0a out.flush(); \x0d\x0a out.close(); \x0d\x0a\x0d\x0a针对asp.net的网页,情况会更复杂一些,因为asp.net需要同时提交__VIEWSTATE的值,一般的做法是二次提交的方法。第一次是读取登录网页的源代码,从源码中用正则表达式过滤出__VIEWSTATE值,然后将这个值作为参数和用户名、密码一起提交到登录网站。
成都创新互联秉承实现全网价值营销的理念,以专业定制企业官网,成都做网站、网站制作、成都外贸网站建设,小程序开发,网页设计制作,手机网站开发,全网整合营销推广帮助传统企业实现“互联网+”转型升级专业定制企业官网,公司注重人才、技术和管理,汇聚了一批优秀的互联网技术人才,对客户都以感恩的心态奉献自己的专业和所长。
四向连通递归填充算法:
void BoundaryFill4(int x, int y, long FilledColor, long BoundaryColor)
{
long CurrentColor;
CurrentColor = GetPixelColor(x,y);
if (CurrentColor != BoundaryColor CurrentColor != FilledColor)
{
SetColor(FilledColor);
SetPixel (x,y);
BoundaryFill4(x+1, y, FilledColor, BoundaryColor);
BoundaryFill4(x-1, y, FilledColor, BoundaryColor);
BoundaryFill4(x, y+1, FilledColor, BoundaryColor);
BoundaryFill4(x, y-1, FilledColor, BoundaryColor);
}
}
该算法的优点是非常简单,缺点是需要大量栈空间来存储相邻的点。
只需把g.drawOval(...)改成g.setColor(Color.RED); g.fillOval(..)就行了,drawOval是只画不填充,而fillOval是画并且填充,填充的颜色是由g.setColor()方法的参数决定的。
java 自动填充网页上的用户名和密码有两种方法:
方法一、在input 标签里面的 value属性赋值即可,如:
input value='x' //这样就每次打开都自动填充x
方法二、用java模拟post提交;代码如下;
package com.sxzl.test;
public class TestRuntime {
public static void main(String args[]) {
try {
//String myArgs[] ={"
};
Process process = Runtime.getRuntime().exec(
//"cmd.exe /c start
"C:\\Program Files\\Internet Explorer\\iexplore.exe"
+"
);
} catch (Exception e) {
e.printStackTrace();
}
}
}