重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍了java利用Jsoup库爬取天气的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
公司专注于为企业提供网站设计制作、做网站、微信公众号开发、商城开发,小程序制作,软件按需网站制作等一站式互联网企业服务。凭借多年丰富的经验,我们会仔细了解各客户的需求而做出多方面的分析、设计、整合,为客户设计出具风格及创意性的商业解决方案,创新互联公司更提供一系列网站制作和网站推广的服务。首先加载Jsoup库:
第一步:下载Jsoup库
第二步:
在项目下面新建文件夹命名如下,将下载好的 jar 包拖动到该文件中
第三步:
右键 jar 包选择 Build Path——>Add to…
若在 Referenced Libraries出现 相对应的 jar 包,则加载成功
实现效果:
实现代码:
import java.io.IOException; import java.net.URL; import java.util.Scanner; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; public class dataGet { private static Scanner in; public static void main(String[] args) throws IOException { in = new Scanner(System.in); System.out.println("请输入想要查询的省会城市天气:"); String City = in.nextLine(); Wea(City);// 省会城市未来七天天气 } public static void Wea(String City) throws IOException { String[] Cities = { "兰州", "101160101", "西宁", "101150101", "西安", "101110101", "郑州", "101180101", "济南", "101120101", "太原", "101100101", "合肥", "101220101", "长沙", "101250101", "武汉", "101200101", "南京", "101190101", "贵阳", "101260101", "成都", "101270101", "昆明", "101290101", "台北", "101340101", "长春", "101060101", "沈阳", "101070101", "福州", "101230101", "杭州", "101210101", "南昌", "101240101", "广州", "101280101", "海口", "101310101", "哈尔滨", "101050101", "石家庄", "101090101", };//对应城市编码,参照 中国天气网 Boolean tem=false;//判断是否为省会城市 String keyword = new String(); for (int i = 0; i < 46; i += 2) { if (Cities[i].equals(City)) { keyword = Cities[i + 1]; tem=true; break; } } if (!tem) { System.out.println("查无此城!"); return; } String url = "http://www.weather.com.cn/weather/" + keyword + ".shtml"; Document document = Jsoup.parse(new URL(url), 3000); // 天气获取 Element element = document.getElementById("7d"); Elements elements = element.getElementsByTag("li"); for (Element el : elements) { Elements date = el.getElementsByTag("h2"); String Date = City + ":" + date; String weather = el.getElementsByClass("wea").eq(0).text(); String temperature = el.getElementsByClass("tem").eq(0).text(); String Weather = Date + weather + temperature; if (Weather.length() > 5) System.out.println(Weather); } } }
感谢你能够认真阅读完这篇文章,希望小编分享的“java利用Jsoup库爬取天气的方法”这篇文章对大家有帮助,同时也希望大家多多支持创新互联网站建设公司,,关注创新互联行业资讯频道,更多相关知识等着你来学习!