宁为玉碎,不为瓦全
分类: Java
2021-03-05 17:33:02
新冠疫情至今在全球累计确诊数已经上亿,死亡人数也是上百万,而且每天仍有大量的确诊感染者.虽然国内已经有效的控制了疫情的爆发,但仍有零星的确诊不断出现,这也提醒着我们疫情还远远没有结束。近一年来,我们就像是站在拔河比赛的两端,比赛的一头是疫苗、药物研发带来的曙光,而另一头则是疫情笼罩的黑暗。最后是哪一端赢得胜利还不知。而关于新冠疫苗,在最近召开的全国政协十三届四次会议新闻发布会上,十三届全国政协委员,全国政协十三届四次会议副秘书长、新闻发言人郭卫民介绍,截至2月28号,中国已累计接种新冠疫苗5200多万剂次,中国已向全球69个国家和2个国际组织提供了疫苗的医疗援助,向28个国家出口了疫苗。这对我们来说是很好的消息,大家都在慢慢的接种了疫苗。
作为一个程序员,我们能不能自己动手爬取网络上的疫情数据,然后按照自己的需求进行数据分析,可以为我们身边的家人朋友提供直观的数据感受,让我们更能重视起来。接下来我们就写写代码练练手,然后用jsoup进行数据解析。
import java.io.IOException;
import java.net.Authenticator;
import java.net.InetSocketAddress;
import java.net.PasswordAuthentication;
import java.net.Proxy;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
public class Demo{ // 代理验证信息
final static String
ProxyUser = "username";
final static String
ProxyPass = "password";
// 代理服务器(产品官网 )
final static String ProxyHost = "t.16yun.cn";
final static Integer ProxyPort = 31111;
// 设置IP切换头
final static String ProxyHeadKey = "Proxy-Tunnel";
public static String getUrlProxyContent(String url)
{ Authenticator.setDefault(new Authenticator() {
public PasswordAuthentication getPasswordAuthentication()
{ return new PasswordAuthentication(ProxyUser, ProxyPass.toCharArray()); } });
// 设置Proxy-Tunnel
Random random = new Random();
int tunnel = random.nextInt(10000);
String ProxyHeadVal = String.valueOf(tunnel);
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(ProxyHost, ProxyPort));
try { // 处理异常、其他参数
Document doc = Jsoup.connect(url).timeout(3000).header(ProxyHeadKey, ProxyHeadVal).proxy(proxy).get();
if(doc != null) { System.out.println(doc.body().html()); } }
catch (IOException e)
{ e.printStackTrace(); }
return null; }
public static void main(String[] args) throws Exception
{ // 要访问的目标页面
String targetUrl = "";
getUrlProxyContent(targetUrl);
}}
最后希望这场大战能早点结束,我们都回归正常的生活。