工程目录:

清单文件增加访问网络权限,防止Cleartext HTTP traffic to xxx not permitted错误设置CleartextTraffic=“true”

<uses-permission android:name="android.permission.INTERNET"/>android:usesCleartextTraffic="true"

Activity

package com.example.ex_eight;import androidx.appcompat.app.AppCompatActivity;import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;public class MainActivity extends AppCompatActivity {private Button btn;private TextView tv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn=findViewById(R.id.btn);tv=findViewById(R.id.tv);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {   //事件处理new HttpTask().execute();}});}class HttpTask extends AsyncTask<Void,Void,String> {@Overrideprotected String doInBackground(Void... voids) {  //耗时操作代码在后台进行String httpUrl = "http://www.zlm.design"; //域名字符串String resultData = "";  //结果字符串URL url = null;  //URL对象try {url = new URL(httpUrl); //构造URL对象时需要使用异常处理} catch (MalformedURLException e) {Log.i("TAG", "URL对象创建失败!");}if(url != null) {  //如果URL不为空时try {//有关网络操作时,需要使用异常处理HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();   // 打开连接并转型//服务器返回数据字符流,网页文档编码一般为UTF-8或GBKInputStreamReader in = new InputStreamReader(urlConn.getInputStream(), "UTF-8");//为输出创建BufferedReaderBufferedReader buffer = new BufferedReader(in);String inputLine = null;while (((inputLine = buffer.readLine()) != null)) {resultData += inputLine + "\n";   //换行}in.close(); //关闭输入流urlConn.disconnect(); // 关闭HTTP连接} catch (IOException e) {resultData=e.getMessage();}} else {resultData = "url is null"; //当url为空时输出}return resultData;}@Overrideprotected void onPostExecute(String resultData) {  //在后台数据提交后更新UI主线程if (resultData != null)tv.setText(resultData);  //原生用法,更新UI工作在onPostExecute()方法里elsetv.setText("Sorry,the content is null");}}
}

Android获取网页源代码相关推荐

  1. c#正则表达式取出数据库中带html标签的内容,C#用正则表达式 获取网页源代码标签的属性或值...

    1.有url获取到网页源代码: using System.Web; using System.IO; using System.Net; private void GetHtmlinfo(string ...

  2. 获取网页源代码的最简单办法

    获取网页源代码的最简单办法,就是利用 WinInet 单元中的函数: Code uses WinInet; function GetWebPage(const Url: string):string; ...

  3. c#利用WebClient和WebRequest获取网页源代码的比较

    前几天举例分析了用asp+xmlhttp获取网页源代码的方法,但c#中一般是可以利用WebClient类和WebRequest类获取网页源代码.下面分别说明这两种方法的实现. WebClient类获取 ...

  4. java获取页面标签_java获取网页源代码后,提取标签内容……

    java获取网页源代码后,提取标签内容-- 关注:245  答案:2  mip版 解决时间 2021-02-01 09:11 提问者咏bù琂败 2021-01-31 13:49 import java ...

  5. js技术要点---JS 获取网页源代码

    JS 获取网页源代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html& ...

  6. c# 获取html代码怎么写,C#获取网页源代码的方法

    本文实例讲述了C#获取网页源代码的方法.分享给大家供大家参考.具体如下: public string GetPageHTML(string url) { try { HttpWebRequest wr ...

  7. 获取网页源代码 python_python 获取网页源代码

    import re #正则表达式模块 import urllib.request import time #时间模块 import string #字符串模块 def getHtml(url):f=u ...

  8. c#获取网页源代码的5种方式

    全栈工程师开发手册 (作者:栾鹏) c#教程全解 c#获取网页源代码的5种方式,发送请求获取响应数据流,按照不同的编码转换为响应字符串 测试代码 static void Main() {string ...

  9. python selenium 获取网页源代码

    获取网页源代码: 引入组件:[from selenium import webdriver]. [from selenium.webdriver.chrome.options import Optio ...

最新文章

  1. css IE下执行的样式,其他浏览器忽略
  2. ide快捷键_新买的固态硬盘用AHCI不能装系统,而用IDE却可以?问题就在这里
  3. 从程序员到技术领导者
  4. JavaScript ES2021 新特性解析
  5. 松弛法(relaxation)
  6. phpmyadmin的config-default-php文件中各个配置参数的详细说明
  7. lstm数学推导_LSTM简介以及数学推导(FULL BPTT)
  8. Tomcat免安装版+Eclipse配置
  9. Scrum敏捷开发过程
  10. raid硬盘速度测试软件,RAID 0模式下固态硬盘性能测试
  11. 类似YY 9158网页版多人语音视频聊天室 远程教学系统源码
  12. MMI笔记 virtual environments, audio for virtual environments 知识点总结
  13. esp8266之红外报警
  14. python日本 老龄化分析_即将读研,求问前辈有什么研究生安利的软件 APP 或者阅读文献用的等一系列提高效率的东西吗!?...
  15. 制作美观GIS地图,掌握这些技巧就够了
  16. 读写shp等空间数据,进行geometry、SimpleFeature等转换的工具类
  17. EIM是什么?与QQ有什么区别?
  18. Matplotlib.pyplot 常用方法(一)
  19. Centos7 安装Caliper 测试 Fabric2.3
  20. MATLAB绘制平行六面体

热门文章

  1. 阿里回应“拼多多员工淘宝账号被封”;微信脸书合办新冠病毒黑客马拉松;Kubernetes 1.18发布 | 极客头条...
  2. 划重点!2019年这类程序员非常稀缺,年薪超平均水平10倍
  3. 程序员,活得是本事:30 岁后的 20 条人生建议
  4. 靠模仿就能建立第二个“Google”?
  5. 想换行做 5G 的开发者到底该咋办?
  6. 女生天生就是产品经理
  7. 官宣:Linux 内核主要贡献者 Linaro「喜提」新任 CEO!
  8. 挨批评了!Chrome 对用户隐私保护还不如 IE?
  9. 人工智能为什么要从本科生抓起?
  10. 计算机软件保护问题研究,计算机软件专利保护问题-研究.pdf