asp.net 抓取网页数据(关于ASP.NET做的后台,的一些事儿(图))

优采云 发布时间: 2022-04-09 18:44

  asp.net 抓取网页数据(关于ASP.NET做的后台,的一些事儿(图))

  在网上看了很多关于android如何访问网页并通过HTTP POST或GET获取数据的视频后。

  我也复制了一份进行测试,通过C#.NET搭建了一个简单的后台,但是发现传参数的时候,网上做的并不能得到对应的结果。

  这是我的要求

  很久没有人回答这个问题了。估计大家后台用的不是ASP.NET。

  经过手机代码反复测试,发现ASP.NET做的后台其实可以直接解析URL中的参数,不需要通过网上介绍的方法实现。

  下面是截取的测试代码的主要部分:

  按钮触发:

   final Button btn2 = (Button) findViewById(R.id.button2);

btn2.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

progressDialog = ProgressDialog.show(MainActivity.this,

"加载中...", "请等待...", true, false);

// 新建线程

new Thread() {

@Override

public void run() {

// 需要花时间计算的方法

try {

String str = posturl("http://aspspider.info/lanjackg2003/Default.aspx?name=lan120576664&psw=456");

textViewhttpRes.setText(str.toString());

} catch (Exception e) {

// TODO: handle exception

}

// 向handler发消息

handler.sendEmptyMessage(0);

}

}.start();

}

});

  获取网页数据的代码:

   public String posturl(String url){

InputStream is = null;

String result = "";

try{

HttpClient httpclient = new DefaultHttpClient();

HttpPost httppost = new HttpPost(url);

HttpResponse response = httpclient.execute(httppost);

HttpEntity entity = response.getEntity();

is = entity.getContent();

}catch(Exception e){

return "Fail to establish http connection!"+e.toString();

}

try{

BufferedReader reader = new BufferedReader(new InputStreamReader(is,"utf-8"));

StringBuilder sb = new StringBuilder();

String line = null;

while ((line = reader.readLine()) != null) {

sb.append(line + "\n");

}

is.close();

result=sb.toString();

Log.v(LOG_TAG,result.toString());

}catch(Exception e){

return "Fail to convert net stream!";

}

return result;

}

  手机显示屏

  电脑显示屏显示:

  

  PC端和手机端显示的结果一致!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线