package com.parse_report; import com.report.utils.ParseUrl; /** * Create by JIUN 2018/7/14 */ public class Main { /** * @description 主程序入口 * @param args * @throws Exception */ public static void main(String[] args) throws Exception { new ParseUrl().cycle(); } }
package com.report.utils; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.HashMap; import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import com.lowagie.text.DocumentException; public class ParseUrl { /** * @description 读取配置文件并做循环处理 * @throws IOException * @throws DocumentException */ public void cycle() throws IOException, DocumentException { int num = Integer.parseInt(Pare_Bean.getNum()); String parseUtlStr = null; for (int i = 1; i <= num; i++) { String url = null; try { url = Pare_Bean.getProp().getProperty("URL_" + i).trim(); String[] urls = url.split(","); parseUtlStr = parseUrl(urls[0]); int ImgBiLi = 55; if (urls.length >= 3) { ImgBiLi = Integer.parseInt(urls[2]); } new IOTxt().IOTotxt(parseUtlStr, urls[1], ImgBiLi); } catch (Exception e) { e.printStackTrace(); } if (url == null) { continue; } } System.out.println( new SimpleDateFormat("yyyy-mm-dd hh:mm:ss").format(System.currentTimeMillis()) + " " + "所有文件处理完成"); } /** * @description 解析url获取到的文本信息 * @param url * 需要处理的url * @return 读取到的文本信息 * @throws IOException */ public String parseUrl(String url) throws IOException { String content = ""; Connection.Response response = Jsoup.connect(url).ignoreContentType(true).method(Connection.Method.GET) .headers(new HashMap() { /** * */ private static final long serialVersionUID = -8566080312795794267L; { put("Host", "www.nmc.cn"); put("Connection", "keep-alive"); put("Upgrade-Insecure-Requests", "1"); put("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"); put("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8"); put("Accept-Encoding", "gzip, deflate"); put("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7"); } }).execute(); String body = response.body(); org.jsoup.nodes.Document parse = Jsoup.parse(body); Element text = parse.getElementById("text"); // Elements select = text.select(".title"); // content += select.text() + "\n"; // select = text.select(".author"); // content += select.text() + "\n"; Elements select = text.select(".writing"); // content+=select.text()+"\n"; Element element = select.get(0); Elements children = element.children(); for (Element ele : children) { if (ele.is("div")) { if (ele.toString().contains("subhead")) { content += ele.text() + "tttttttttttt" + "\n"; } else { content += ele.text() + "\n"; Elements img = ele.select("img"); if (img != null) { for (Element el : img) { content += el.attr("src") + "\n"; } } } } else if (ele.select("p").toString().length() > 1) { // 判断是否是标题 if (ele.select("b").toString().length() > 1) { content += ele.text() + "-------------" + "\n"; } else if (ele.select("p").toString().contains("text-align")) { content += ele.text() + "pppppppppp" + "\n"; } else { content += ele.text() + "\n"; } } } return content; } }
package com.report.utils; import java.awt.Color; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.StringReader; import java.net.HttpURLConnection; import java.net.URL; import java.text.SimpleDateFormat; import java.util.Date; import org.jsoup.Connection; import org.jsoup.Jsoup; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.Element; import com.lowagie.text.Font; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.Paragraph; import com.lowagie.text.rtf.RtfWriter2; /** * @description 将文本信息写入到word文档中 * @author fan * */ public class IOTxt { /** * @description 解析从url获取到的文本信息,并将文本信息写入到word文档中 * @param parseUtlStr * 从url获取到的文本信息 * @param filePath * doc文档的路径 * @throws DocumentException * @throws IOException */ public void IOTotxt(String parseUtlStr, String filePath ,int ImgBiLi) throws DocumentException, IOException { BufferedReader bufferRead = null; Document doc = null; Paragraph par = new Paragraph(); Image img = null; // 大标题 Font font = new Font(Font.BOLD, 14, Font.BOLD, new Color(0, 0, 0)); // BaseFont bfFont // =BaseFont.createFont("SIMSUN",BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED); // 正文 Font font1 = new Font(Font.NORMAL, 12, Font.NORMAL, new Color(0, 0, 0)); // 小标题 Font font2 = new Font(Font.NORMAL, 12, Font.BOLD, new Color(0, 0, 0)); if (filePath.contains("yyyy")) { String df = new SimpleDateFormat("yyyyMMddHH").format(new Date()); filePath = filePath.replace("yyyy", df); } File file = new File(filePath); if (!file.exists()) { if (!file.getParentFile().exists()) { file.getParentFile().mkdirs(); } file.createNewFile(); } try { bufferRead = new BufferedReader(new StringReader(parseUtlStr)); doc = new Document(PageSize.A4, 72, 72, 90, 90); RtfWriter2.getInstance(doc, new FileOutputStream(new File(filePath))); doc.open(); String aa = ""; par.setLeading(24); int i = 1; wc: while ((aa = bufferRead.readLine()) != null) { if (aa.length() < 1) { continue; } par.setFont(font1); par.setAlignment(Element.ALIGN_LEFT); if (aa.contains("tttttttttttt")) { par.setAlignment(Element.ALIGN_CENTER); par.setFont(font); par.add(aa.replace("tttttttttttt", "")); doc.add(par); par.clear(); continue; } else if (aa.contains("pppppppppp")) { par.setAlignment(Element.ALIGN_CENTER); par.add(aa.replace("pppppppppp", "")); doc.add(par); par.clear(); continue; } else if (aa.contains("-------------")) { if (i == 1) { par.add("\n"); i++; } if (aa.contains("影响与关注")) { par.setFont(font2); par.add(" " + aa.replace("-------------", "")); doc.add(par); par.clear(); par.setFont(font1); while ((aa = bufferRead.readLine()) != null) { if (aa.contains("http")) { break wc; } if (aa.length() < 1) { continue; } par.add(" " + aa); doc.add(par); par.clear(); } } par.setFont(font2); par.add(" " + aa.replace("-------------", "")); doc.add(par); par.clear(); continue; } else if (aa.contains("http")) { byte[] data = imageToJpg(aa); img = Image.getInstance(data); img.setAbsolutePosition(0, 0); // img.scaleAbsolute(24, 14); img.setAlignment(Image.LEFT); //图片缩放比例 img.scalePercent(ImgBiLi); par.add(img); doc.add(par); par.clear(); continue; } else { par.add(" " + aa); doc.add(par); par.clear(); } } } catch (IOException e) { e.printStackTrace(); } finally { try { doc.close(); bufferRead.close(); } catch (IOException e) { e.printStackTrace(); } System.out.println(new SimpleDateFormat("yyyy-mm-dd hh:mm:ss").format(System.currentTimeMillis()) + " 文件写入完成:" + filePath); } } /** * @description 将从url获取到的文本中的http(图片信息)下载下来,并保存为二进制的形式 * @param aa * http的网址链接 * @return 二进制的图片信息 * @throws IOException * @throws DocumentException */ private byte[] imageToJpg(String aa) throws IOException, DocumentException { Connection.Response execute = Jsoup.connect(aa + System.currentTimeMillis()).ignoreContentType(true).execute(); byte[] data = execute.bodyAsBytes(); return data; } @SuppressWarnings("unused") private byte[] imageToTxt(String aa) throws IOException { // new一个URL对象 URL url = new URL(aa); // 打开链接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置请求方式为"GET" conn.setRequestMethod("GET"); // 超时响应时间为5秒 conn.setConnectTimeout(5 * 1000); // 通过输入流获取图片数据 InputStream inStream = conn.getInputStream(); // 得到图片的二进制数据,以二进制封装得到数据,具有通用性 byte[] data = readInputStream(inStream); // new一个文件对象用来保存图片,默认保存当前工程根目录 // File imageFile = new File("pic20170419.jpg"); // // 创建输出流 // FileOutputStream outStream = new FileOutputStream(imageFile); // // 写入数据 // outStream.write(data); // // 关闭输出流 // outStream.close(); return data; } private byte[] readInputStream(InputStream inStream) throws IOException { ByteArrayOutputStream outStream = new ByteArrayOutputStream(); // 创建一个Buffer字符串 byte[] buffer = new byte[1024]; // 每次读取的字符串长度,如果为-1,代表全部读取完毕 int len = 0; // 使用一个输入流从buffer里把数据读取出来 while ((len = inStream.read(buffer)) != -1) { // 用输出流往buffer里写入数据,中间参数代表从哪个位置开始读,len代表读取的长度 outStream.write(buffer, 0, len); } // 关闭输入流 inStream.close(); // 把outStream里的数据写入内存 return outStream.toByteArray(); } }
package com.report.utils; import java.io.IOException; import java.io.InputStream; import java.text.SimpleDateFormat; import java.util.Properties; public class Pare_Bean { private static Properties prop = null; private static String filePath = null; private static String num = null; /** * @description 加载配置文件 */ static { InputStream in = null; try { // 包内读取 in = Pare_Bean.class.getClassLoader().getResourceAsStream("parse.properties"); // jar包外读取 // in = new FileInputStream("parse.properties"); prop = new Properties(); prop.load(in); filePath = prop.getProperty("FILE_PATH"); num = prop.getProperty("NUM"); } catch (IOException e) { e.printStackTrace(); } finally { try { if (in != null) in.close(); } catch (IOException e) { e.printStackTrace(); } System.out.println(new SimpleDateFormat("yyyy-mm-dd hh:mm:ss").format(System.currentTimeMillis()) + " " + "属性文件加载完成,开始数据处理"); } } public static Properties getProp() { return prop; } public static String getFilePath() { return filePath; } public static String getNum() { return num; } }
#配置文件中URL后面最大的一位数字 NUM=6 #格式:URL_数字=需要抓取的网址,保存路径,图片缩放比例(默认55) URL_1=http://www.nmc.cn/publish/weather-bulletin/index.htm,d:/ybwz/gjdwgb.doc,50 URL_2=http://www.nmc.cn/publish/typhoon/warning.html,d:/ybwz/tfgb/tfyyyy.doc URL_3=http://www.nmc.cn/publish/country/warning/typhoon.html,d:/ybwz/tfyj/tfyyyy.doc URL_4=http://www.nmc.cn/publish/country/warning/megatemperature.html,d:/ybwz/gwyj/yyyy.doc URL_5=http://www.nmc.cn/publish/country/warning/downpour.html,d:/ybwz/byyj/yyyy.doc URL_6=http://www.nmc.cn/publish/country/warning/strong_convection.html,d:/ybwz/qdlyj/yyyy.doc
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 com parse_report 0.0.1-SNAPSHOT jar parse_report http://maven.apache.org UTF-8 junit junit 4.10 test org.jsoup jsoup 1.11.3 com.lowagie itext 2.1.5 com.lowagie itext-rtf 2.1.4 com.itextpdf itext-asian 5.2.0 maven-assembly-plugin jar-with-dependencies com.parse_report.Main make-assembly package single
爬取的网页内容模板:
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<title>天气预报 >> 天气公报title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="description" content="中央气象台官方网站权威发布台风、暴雨、寒潮、高温、沙尘暴、大雾等各类灾害性天气的预报警报。提供天气预报、天气实况、降水量预报、强对流天气预报、农业气象、海洋气象、环境气象、地质灾害气象、交通气象、水文气象、数值预报及预报员交流论坛等栏目">
<meta name="keywords" content="天气,天气预报,气象">
<link rel="shortcut icon" href="http://image.nmc.cn/static2/favicon.ico">
<link rel="stylesheet" type="text/css" href="http://image.nmc.cn/static2/site/nmc/themes/basic/css/basic.css?v=20180325_20180517">
<script src="http://image.nmc.cn/static2/jquery/jquery-1.9.1.min.js?v=20180325" type="text/javascript">script>
<script src="http://image.nmc.cn/static2/site/nmc/themes/basic/js/doT.min.js?v=20180325" type="text/javascript">script>
<script type="text/javascript">
var ctx = '/f';
var ctxStatic = 'http://image.nmc.cn/static2';
script>
<link rel="stylesheet" type="text/css" href="http://image.nmc.cn/static2/site/nmc/themes/basic/js/jcarousel-0.2.9/skins/tango/skin.css?v=20180325">
<script type="text/javascript" src="http://image.nmc.cn/static2/site/nmc/themes/basic/js/jcarousel-0.2.9/lib/jquery.jcarousel.min.js?v=20180325">script>
<link rel="stylesheet" type="text/css" href="http://image.nmc.cn/static2/site/nmc/themes/basic/css/product_list.css?v=20180325">
<style style="text/css">
.left-nav li.subitem{background-position: 164px center;}
.jcarousel-skin-tango .jcarousel-item{width: 104px; height: 32px;}
.jcarousel-skin-tango .jcarousel-prev-horizontal,.jcarousel-skin-tango .jcarousel-next-horizontal{top: 20px;}
.jcarousel-skin-tango p.actived{border: 1px solid #3773b2;}
style>
<script type="text/javascript">
$(function(){
$('#mylistcarousel').jcarousel({
buttonNextCallback:function(){
$("img").lazyload();
}
});
});
script>
head>
<body>
<div class="logo_menu_width">
<div class="logo_menu">
<div class="logo_search">
<a href="/">
<div class="logo">div>a>
<div class="search">
<div class="sitechange">
<a href="/">简体中文a>
<a href="http://eng.nmc.cn">Englisha>
<a href="http://typhoon.nmc.cn/web.html" target="_blank" style="color:red;">台风网a>
<a href="http://www.nmc.cn/welcome" target="_blank" style="color:red;">商务合作a>
div>
<div id="search_box">
<form id="search_form" action="#">
<div id="input_div">
<input id="searchCity" type="text" placeholder=" 邮编 区号 城市" value="">
div>
<div id="search_button">
<input type="image" src="http://image.nmc.cn/static2/site/nmc/themes/basic/images/search_button.png" style="width: 24px; height: auto;" alt="搜索" title="搜索">
div>
form>
div>
div>
div>
<div id="navbar" class="menu">
<ul>
<li id="nav-1427"><a href="/" target="_self">首页a>li>
<li id="nav-309"><a href="/publish/observations/china/dm/weatherchart-h000.htm" target="_self">天气实况a>li>
<li id="nav-469"><a href="/publish/forecast/china.html" target="_self">城市预报a>li>
<li id="nav-336" class="actived"><a href="/publish/weather-bulletin/index.htm" target="_self">天气预报a>li>
<li id="nav-428"><a href="/publish/typhoon/typhoon_new.html" target="_self">台风海洋a>li>
<li id="nav-457"><a href="/publish/fog.html" target="_self">环境气象a>li>
<li id="nav-534"><a href="/publish/agro/soil-moisture-monitoring-10cm.html" target="_self">农业气象a>li>
<li id="nav-572"><a href="/publish/waterlogging.html" target="_self">水文地质a>li>
<li id="nav-579"><a href="/publish/nwpc/grapes_gfs/nh/200hPa-hgt.htm" target="_self">数值预报a>li>
ul>
div>
div>
div>
<div id="navbar_sub" class="navbar_sub shadow">
<ul>
<li><a href="/publish/satellite/fy2.htm" target="_self">卫星云图a>li>
<li><a href="/publish/country/warning/index.html" target="_self">气象灾害预警a>li>
<li><a href="/publish/observations/environmental.html" target="_self">环境气象公报a>li>
<li><a href="/publish/precipitation/1-day.html" target="_self">1-7天降水量预报a>li>
<li><a href="/publish/weather-bulletin/index.htm" target="_self">天气公报a>li>
<li><a href="/publish/weatherperday/index.htm" target="_self">每日天气提示a>li>
<li><a href="/publish/forecast/china.html" target="_self">城市天气预报a>li>
<li><a href="/publish/marine/sea-fog.htm" target="_self">海雾预报a>li>
<li><a href="/publish/marine/sea-wind.htm" target="_self">海上大风预报a>li>
ul>
<ul>
<li><a href="/publish/observations/china/dm/weatherchart-h000.htm" target="_self">天气分析a>li>
<li><a href="/publish/satellite/FY4A-true-color.htm" target="_self">卫星云图a>li>
<li><a href="/publish/radar/chinaall.html" target="_self">雷达图a>li>
<li><a href="/publish/observations/hourly-precipitation.html" target="_self">降水量a>li>
<li><a href="/publish/observations/hourly-temperature.html" target="_self">气温a>li>
<li><a href="/publish/observations/hourly-winds.html" target="_self">风a>li>
<li><a href="/publish/sea/seaplatform1.html" target="_self">能见度a>li>
<li><a href="/publish/observations/lighting.html" target="_self">强天气a>li>
<li><a href="/publish/soil-moisture/10cm.html" target="_self">土壤水分a>li>
ul>
<ul>
<li id="followcity" class="followcity">
<div id="followcity0" class="city">div>
<div id="followcity1" class="city">div>
<div id="followcity2" class="city">div>
<div id="followcity3" class="city">div>
<div class="settingCity">
定制
div> li>
ul>
<ul style="display:block;">
<li><a href="/publish/weather-bulletin/index.htm" target="_self" style="color:#1a96dd;">天气公报a>li>
<li><a href="/publish/weatherperday/index.htm" target="_self">每日天气提示a>li>
<li><a href="/publish/country/warning/megatemperature.html" target="_self">气象灾害预警a>li>
<li><a href="/publish/precipitation/1-day.html" target="_self">1-7天降水量预报a>li>
<li><a href="/publish/temperature/hight/24hour.html" target="_self">1-7天气温预报a>li>
<li><a href="/publish/bulletin/swpc.html" target="_self">强对流天气预报a>li>
<li><a href="/publish/bulletin/mid-range.htm" target="_self">中期天气预报a>li>
<li><a href="/publish/bulletin/abroadweather.html" target="_self">国外天气预报a>li>
ul>
<ul>
<li><a href="/publish/typhoon/typhoon_new.html" target="_self">台风快讯a>li>
<li><a href="http://typhoon.nmc.cn" target="_blank">台风网a>li>
<li><a href="/publish/typhoon/probability-img2.html" target="_self">台风路径预报a>li>
<li><a href="/publish/typhoon/warning.html" target="_self">台风公报a>li>
<li><a href="http://www.nmc.cn/publish/country/warning/typhoon.html" target="_self">台风预警a>li>
<li><a href="/publish/typhoon/message.html" target="_self">台风报文a>li>
<li><a href="/publish/marine/newcoastal.html" target="_self">海区预报a>li>
<li><a href="/publish/marine/maritime.html" target="_self">海事公报a>li>
<li><a href="/publish/marine/sea-wind.htm" target="_self">海上大风预报a>li>
<li><a href="/publish/marine/sea-fog.htm" target="_self">海雾预报a>li>
<li><a href="/publish/marine/forecast.htm" target="_self">海洋天气公报a>li>
<li><a href="/publish/typhoon/totalcyclone.htm" target="_self">全球热带气旋监测公报a>li>
<li><a href="/publish/typhoon/north-indian-ocean-tropical-cyclone-bulletin.htm" target="_self">北印度洋热带气旋公报a>li>
ul>
<ul>
<li><a href="/publish/fog.html" target="_self">雾预报a>li>
<li><a href="/publish/haze.html" target="_self">霾预报a>li>
<li><a href="/publish/severeweather/dust.html" target="_self">沙尘预报a>li>
<li><a href="/publish/observations/environmental.html" target="_self">环境气象公报a>li>
<li><a href="/publish/environment/National-Bulletin-atmospheric-environment.htm" target="_self">全国大气环境气象公报a>li>
<li><a href="/publish/environment/air_pollution-24.html" target="_self">空气污染气象条件预报a>li>
<li><a href="/publish/environment/pollution_forecast.htm" target="_self">重污染天气预报a>li>
<li><a href="/publish/environment/uva.html" target="_self">紫外线a>li>
ul>
<ul>
<li><a href="/publish/agro/soil-moisture-monitoring-10cm.html" target="_self">土壤水分监测a>li>
<li><a href="/publish/agro/disastersmonitoring/Agricultural_Drought_Monitoring.htm" target="_self">农业干旱综合监测a>li>
<li><a href="/publish/agro/weatherservices/spring_sowing.html" target="_self">关键农时农事a>li>
<li><a href="/publish/agro/ten-week/index.html" target="_self">农业气象周报a>li>
<li><a href="/publish/agro/monthly/index.html" target="_self">农业气象月报a>li>
<li><a href="/publish/crop/index.htm" target="_self">农业气象影响预报与评估a>li>
<li><a href="/publish/agro/information/soybean.html" target="_self">作物发育期a>li>
ul>
<ul>
<li><a href="/publish/waterlogging.html" target="_self">渍涝风险预报a>li>
<li><a href="/publish/mountainflood.html" target="_self">山洪灾害气象预警a>li>
<li><a href="/publish/geohazard.html" target="_self">地质灾害气象风险预警a>li>
<li><a href="/publish/swdz/zxhlhsqxyj.html" target="_self">中小河流洪水气象风险预警a>li>
ul>
<ul>
<li><a href="/publish/nwpc/grapes_gfs/nh/200hPa-hgt.htm" target="_self">GRAPES_GFSa>li>
<li><a href="/publish/nwp/t639/nh/200hPa-hgt/index.html" target="_self">T639L60a>li>
<li><a href="/publish/area/china/hws.html" target="_self">GRAPES_MESOa>li>
<li><a href="/publish/nwp/t639gep/spaghetti-diagram/500hpa.html" target="_self">T639全球集合预报a>li>
<li><a href="/publish/nwpc/grapes-regional/stamp/radar.htm" target="_self">GRAPES中尺度集合预报a>li>
<li><a href="/publish/nwp/typhoon/path.html" target="_self">台风模式a>li>
<li><a href="/publish/nwp/dust/china/dust1.html" target="_self">亚洲沙尘暴模式a>li>
<li><a href="/publish/nwp/ww3/globe/index.html" target="_self">海浪模式a>li>
<li><a href="/publish/nwp/synoptic-verification-bulletin/index.html" target="_self">数值预报天气学检验a>li>
<li><a href="/publish/nwp/modelvalidation/meteor-elements/ets/china.htm" target="_self">模式检验a>li>
ul>
div>
<div class="container">
<div class="mt10">
<div class="left-nav" id="leftNav">
<div class="block">
<div class="titlebg icon-shikong">
<h1> 天气预报 h1>
<em><a href="#">↓a>em>
div>
<div class="content" style="display: block;">
<ul class="dropdown-menu">
<li data-submenu-id="m3780" class="subitem"> <a href="/publish/weather-bulletin/index.htm" target="_self" class="actived">天气公报a> li>
<li data-submenu-id="m380" class="subitem"> <a href="/publish/weatherperday/index.htm" target="_self">每日天气提示a> li>
<li data-submenu-id="m368" class="subitem"> <a href="/publish/country/warning/megatemperature.html" target="_self">气象灾害预警a> li>
<li data-submenu-id="m337" class="subitem"> <a href="/publish/precipitation/1-day.html" target="_self">1-7天降水量预报a> li>
<li data-submenu-id="m351" class="subitem"> <a href="/publish/temperature/hight/24hour.html" target="_self">1-7天气温预报a> li>
<li data-submenu-id="m382" class="subitem"> <a href="/publish/bulletin/swpc.html" target="_self">强对流天气预报a> li>
<li data-submenu-id="m426" class="subitem"> <a href="/publish/bulletin/mid-range.htm" target="_self">中期天气预报a> li>
<li data-submenu-id="m392" class="subitem"> <a href="/publish/bulletin/abroadweather.html" target="_self">国外天气预报a> li>
<li data-submenu-id="m3160" class="subitem"> <a href="/publish/observations/environmental.html" target="_self">环境气象公报a> li>
<li data-submenu-id="m423" class="subitem"> <a href="/publish/traffic.html" target="_self">交通气象预报a> li>
<li data-submenu-id="m424" class="subitem"> <a href="/publish/environment/forestfire-doc.html" target="_self">森林火险预报a> li>
<li data-submenu-id="m425" class="subitem"> <a href="/publish/environment/glassland-fire.html" target="_self">草原火险预报a> li>
ul>
div>
div>
<div class="block">
<div class="titlebg titlebg-noradius icon-shikong">
<h1>实况h1>
<em><a href="#">↓a>em>
div>
<div class="content">
<ul class="dropdown-menu">
<li data-submenu-id="m3181" class="subitem"> <a href="/publish/observations/china/dm/weatherchart-h000.htm" target="_self">天气分析a> li>
<li data-submenu-id="m50" class="subitem"> <a href="/publish/satellite/FY4A-true-color.htm" target="_self">卫星云图a> li>
<li data-submenu-id="m90" class="subitem"> <a href="/publish/radar/chinaall.html" target="_self">雷达图a> li>
<li data-submenu-id="m2" class="subitem"> <a href="/publish/observations/hourly-precipitation.html" target="_self">降水量a> li>
<li data-submenu-id="m22" class="subitem"> <a href="/publish/observations/hourly-temperature.html" target="_self">气温a> li>
<li data-submenu-id="m36" class="subitem"> <a href="/publish/observations/hourly-winds.html" target="_self">风a> li>
<li data-submenu-id="m38" class="subitem"> <a href="/publish/sea/seaplatform1.html" target="_self">能见度a> li>
<li data-submenu-id="m39" class="subitem"> <a href="/publish/observations/lighting.html" target="_self">强天气a> li>
<li data-submenu-id="m44" class="subitem"> <a href="/publish/soil-moisture/10cm.html" target="_self">土壤水分a> li>
ul>
div>
div>
<div class="block">
<div class="titlebg titlebg-noradius icon-shikong">
<h1>模式h1>
<em><a href="#">↓a>em>
div>
<div class="content">
<ul class="dropdown-menu">
<li data-submenu-id="m3700" class="subitem"> <a href="/publish/nwpc/grapes_gfs/nh/200hPa-hgt.htm" target="_self">GRAPES_GFSa> li>
<li data-submenu-id="m580" class="subitem"> <a href="/publish/nwp/t639/nh/200hPa-hgt/index.html" target="_self">T639L60a> li>
<li data-submenu-id="m632" class="subitem"> <a href="/publish/area/china/hws.html" target="_self">GRAPES_MESOa> li>
<li data-submenu-id="m939" class="subitem"> <a href="/publish/nwp/t639gep/spaghetti-diagram/500hpa.html" target="_self">T639全球集合预报a> li>
<li data-submenu-id="m971" class="subitem"> <a href="/publish/nwpc/grapes-regional/stamp/radar.htm" target="_self">GRAPES中尺度集合预报a> li>
<li data-submenu-id="m1122" class="subitem"> <a href="/publish/nwp/typhoon/path.html" target="_self">台风模式a> li>
<li data-submenu-id="m1166" class="subitem"> <a href="/publish/nwp/dust/china/dust1.html" target="_self">亚洲沙尘暴模式a> li>
<li data-submenu-id="m1418" class="subitem"> <a href="/publish/nwp/ww3/globe/index.html" target="_self">海浪模式a> li>
<li data-submenu-id="m1162" class="subitem"> <a href="/publish/nwp/synoptic-verification-bulletin/index.html" target="_self">数值预报天气学检验a> li>
<li data-submenu-id="m1185" class="subitem"> <a href="/publish/nwp/modelvalidation/meteor-elements/ets/china.htm" target="_self">模式检验a> li>
ul>
div>
div>
<style>
.block3{border: 1px solid #ededed; border-top: 0; background-color: #fff; padding:20px 12px; overflow:hidden;margin-top:10px;}
.block3 .title{padding-top:5px;}
.weixin{float:left; width:93px; margin-right:4px;}
.weixin div{text-align:center; font-size:12px; color:#666;}
.sina{float:right; width:93px; margin-left:4px;}
.sina div{text-align:center; font-size:12px; color:#666;}
style>
<div class="nav">
<div class="block3">
<div class="weixin">
<div>
<img src="http://image.nmc.cn/static/img/weixin.png">
div>
<div class="title">
微信公众号
div>
div>
<div class="sina">
<div>
<img src="http://image.nmc.cn/static/img/sina.png">
div>
<div class="title">
新浪微博
div>
div>
div>
div>
div>
<div class="right-container">
<div class="block">
<div class="titlebg home">
<h1 class="navigation"><span class="fl">当前位置:span>
<div>
<a href="/publish/forecasts.html">天气预报a> >
<ul>
<li><a href="/publish/weather-bulletin/index.htm">天气公报a>li>
<li><a href="/publish/weatherperday/index.htm">每日天气提示a>li>
<li><a href="/publish/country/warning/megatemperature.html">气象灾害预警a>li>
<li><a href="/publish/precipitation/1-day.html">1-7天降水量预报a>li>
<li><a href="/publish/temperature/hight/24hour.html">1-7天气温预报a>li>
<li><a href="/publish/bulletin/swpc.html">强对流天气预报a>li>
<li><a href="/publish/bulletin/mid-range.htm">中期天气预报a>li>
<li><a href="/publish/bulletin/abroadweather.html">国外天气预报a>li>
<li><a href="/publish/observations/environmental.html">环境气象公报a>li>
<li><a href="/publish/traffic.html">交通气象预报a>li>
<li><a href="/publish/environment/forestfire-doc.html">森林火险预报a>li>
<li><a href="/publish/environment/glassland-fire.html">草原火险预报a>li>
ul>
div><a href="/publish/weather-bulletin/index.htm">天气公报a>h1>
div>
<div id="maincontent" class="content">
<div id="text">
<div class="title">
天 气 公 报
div>
<div class="author">
制作:陈双 徐珺 签发:马学款
<b>2018b> 年
<b>07b> 月
<b>20b> 日
<b>08b> 时
div>
<hr color="red">
<div class="writing">
<div class="subhead">
西北地区东部至东北地区将有较强降水
div>
<div class="subhead">
台风“安比”将影响东部沿海
div>
<p><b>一、四川盆地西部和内蒙古等地出现大到暴雨b>p>
<p>昨日,四川盆地西部、内蒙古、陕西北部、山西西北部、河北北部、北京西南部、黑龙江西南部及海南岛北部、广西南部、云南南部等地出现大到暴雨,四川盆地西部及内蒙古巴彦淖尔和鄂尔多斯、陕西榆林、北京门头沟等地出现大暴雨(100~186毫米),最大小时降雨量50~80毫米。另外,甘肃中东部出现中到大雨,甘南州合作市最大降雨量98毫米(最大小时降雨量55毫米)。p>
<p><b>二、重点天气预报b>p>
<p><b>1. 西北地区东部至东北地区将有较强降水b>p>
<p>预计7月20日08时至21日08时,四川盆地西部、甘肃东部、宁夏南部、内蒙古中南部、黑龙江中部、广西南部、云南西部和南部等地的部分地区有大雨或暴雨,其中,黑龙江中部等地局地有大暴雨(100~130毫米),上述地区局地伴随短时强降水(最大小时降水量20~40毫米,局地50毫米以上)、雷暴大风等强对流天气。中央气象台7月20日06时继续发布暴雨蓝色预警(见图1)。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_1.jpg?v=1532043935568">
div>
<p>p>
<p style="text-align:center;">图1 全国强降雨落区预报图(7月20日08时-21日08时)p>
<p><b>2. 台风“安比”将影响东部沿海b>p>
<p>中央气象台7月20日06时发布台风黄色预警(见图2):预计,“安比”将以每小时15-20公里的速度向西北方向移动,21日早晨进入东海东南部,强度逐渐加强,最强可达强热带风暴级或台风级(10-12级,28-33米/秒),将于21日夜间到22日凌晨在浙江温岭到江苏启东一带沿海登陆(强热带风暴级,10-11级,25-30米/秒)。登陆后将继续向西北方向移动,强度逐渐减弱。受其影响,预计20日08时-21日08时,东海东部将有6-9级大风,东海东南部部分海域的风力有10级,阵风11-12级。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_2.png?v=1532043936069">
div>
<p>p>
<p style="text-align:center;">图2 台风“安比”路径概率预报图p>
<p><b>3. 中东部地区高温天气持续b>p>
<p>20日至21日,黄淮、江淮、江汉、江南、四川盆地、华北南部和东部、陕西南部、贵州东部、重庆、新疆南疆盆地等地的部分地区将持续出现35℃以上的高温天气,局地可达40℃。中央气象台20日06时继续发布高温黄色预警(见图3)。受台风“安比”影响,22日起高温范围明显缩小。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_3.jpg?v=1532043936337">
div>
<p>p>
<p style="text-align:center;">图3 全国高温区域预报(7月20日08时-20时)p>
<p><b>三、未来三天具体预报b>p>
<p> 7月20日08时至21日08时,甘肃东部、宁夏、陕西北部、内蒙古中南部、河北北部、黑龙江中北部、四川盆地西部、云南西部和南部、广西南部、海南岛等地的部分地区有中到大雨,其中,甘肃东部、内蒙古河套地区、四川盆地西部、黑龙江中部、云南西部、广西南部等地局地有暴雨或大暴雨(100~130毫米);上述部分地区将伴有短时强降水(见图4)。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_4.jpg?v=1532043936589">
div>
<p>p>
<p style="text-align:center;">图4 全国降水量预报图(7月20日08时-21日08时)p>
<p> 7月21日08时至22日08时,陕西北部、内蒙古中南部和东北部、黑龙江北部、安徽东南部、江苏南部、上海、浙江中北部、海南岛、云南西部等地的部分地区有大到暴雨,其中,浙江西北部、海南岛西部等地局地有大暴雨(100~200毫米);上述部分地区将伴有短时强降水和雷暴大风等强对流天气(见图5)。东海大部将有8~10级、阵风11~12级大风,台风中心经过的附近海域风力可达10~11级、阵风12~13级,北部湾将有7~9级、阵风10级的大风。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_5.jpg?v=1532043936858">
div>
<p>p>
<p style="text-align:center;">图5 全国降水量预报图(7月21日08时-22日08时)p>
<p> 7月22日08时至23日08时,山东南部、安徽东部、江苏大部、浙江中北部、上海、华南南部沿海、海南岛、云南西部等地的部分地区有大到暴雨,其中江苏北部、浙江西北部、雷州半岛、海南岛等地有大暴雨,局地有特大暴雨(200~280毫米);上述部分地区将伴有短时强降水和雷暴大风等强对流天气(见图6)。北部湾、东海北部将有7~9级、阵风10级的大风。p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_6.jpg?v=1532043937138">
div>
<p>p>
<p style="text-align:center;">图6 全国降水量预报图(7月22日08时-23日08时)p>
<p><b>影响与关注b>p>
<p>1、台风“安比”发展趋势及对华东地区等地的风雨影响;p>
<p>2、西北地区东部、内蒙古和黑龙江等地较强降雨,关注强降雨可能引发的中小河流洪水、山洪、地质灾害以及雷暴大风等强对流天气不利影响;p>
<p>3、黄淮、江淮、江汉、江南、四川盆地东部等地持续高温天气及影响;p>
<p>4.广西及云南南部局地强降雨及影响。p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<p>p>
<div style="text-align:center;">
<img src="http://image.nmc.cn/product/2018/07/20/WEBU/medium/SEVP_NMC_WEBU_SFER_EME_AGLB_LNO_P9_20180720080000000_XML_7.png?v=1532043937196">
div>
<p>p>
<p><b>制作: 陈双 徐珺 签发: 马学款b>p>
div>
div>
div>
div>
<div class="block mt10" id="hotNews" style="display:none;">
<div class="titlebg">
<h1>热点新闻h1>
div>
<div class="content">
<ul class="hotnews" id="hotNews-content">
<script type="text/template" charset="utf-8" id="focusnews">
{{ for(var i=0;i<it.length;i++){ }}
<li><a href="{{=it[i].url}}" title="{{=it[i].dataDesc}}">{{=(it[i].dataDesc.length > 14 ? it[i].dataDesc.substr(0,13) + '…' : it[i].dataDesc)}}<span>{{=it[i].updateDate.substr(5,11)}}</span></a> </li>
{{ } }}
script>
ul>
div>
div>
<script>
$(function(){
$.getJSON('/f/rest/focusnews', function(data){
var focusNewsTmpl = doT.template($("#focusnews")[0].text);
$("#hotNews-content").html(focusNewsTmpl(data));
$('#hotNews').show();
});
});
script>
<div class="block mt10" id="relevant" style="display: none;">
<div class="titlebg">
<h1>相关产品h1>
div>
<div class="content">
<ul id="relevantList" class="about-product">
<script type="text/template" charset="utf-8" id="relevantListTmpl">
{{ for(var i=0;i<it.length;i++){ }}
<li>
<p class="pimg"><a href="{{=it[i].url}}"><img height="147" width="147" src="http://image.nmc.cn{{=it[i].imgPath.replace('medium','small')}}" onerror="this.οnerrοr='';this.src='http://image.nmc.cn/static2/site/nmc/themes/basic/images/nodata.jpg';this.alt='图片不存在!'"></a></p>
<p class="pname"> <a href="{{=it[i].url}}">{{=it[i].displayName}}</a></p>
</li>
{{ } }}
script>
ul>
div>
div>
<script>
$(function(){
$.getJSON('/f/rest/relevant/3780', function(data) {
var relevantListTmpl = doT.template($("#relevantListTmpl")[0].text);
$("#relevantList").html(relevantListTmpl(data));
if(data.length > 0) {
$('#relevant').show();
}
});
});
script>
div>
div>
<div class="clear">div>
div>
<script type="text/javascript" src="http://image.nmc.cn/static2/site/nmc/themes/basic/js/product.js?v=20180325">script>
<script type="text/javascript">
$(function(){
$('#nav-336').trigger('mouseenter');
$('#mylistcarousel li').click(function(){
var $this = $(this);
var data_id = $this.find('p').attr('data-id');
$('#text').load('/f/rest/getContent?dataId=' + data_id,function(){
hightlight();
});
$this.find('p').addClass('actived').parent().siblings().find('p').removeClass('actived');
});
hightlight();
});
script>
<div id="footer" class="footer" style="position: relative;">
<ul>
<li><a href="/f/view/d994acb42d4b4bdf97034554499bb654/6cd4105faa764f8d9031c5b7adf9f129.html">关于我们a>li>
<li><a href="/f/view/d994acb42d4b4bdf97034554499bb654/2fb508b6f68640f1bb659a0111a1ba4a.html">联系方式a>li>
<li><a href="/f/view/d994acb42d4b4bdf97034554499bb654/722665831f0a4e98800c41e691444963.html">网站声明a>li>
<li><a href="/f/sitemap.html">网站地图a>li>
<li><a href="http://m.nmc.cn" onclick="$.cookie('mode', 'mobile', { domain: '.nmc.cn', path: '/' });">触摸屏版a>li>
ul>
<div>
<div class="fl" style="width:800px;overflow:hidden;">
<div class="fl">
<script type="text/javascript">
document.write(unescape("%3Cspan id='_ideConac' %3E%3C/span%3E%3Cscript src='http://dcs.conac.cn/js/01/008/0000/60887167/CA010080000608871670001.js' type='text/javascript'%3E%3C/script%3E"));
script>
div>
<div class="fl" style="margin-left:30px;">
<p>国家气象中心 版权所有 Copyright©2009-2017 京ICP备05055842号p>
<p>本站所刊登的信息、数据和各种专栏材料,未经授权禁止下载使用p>
<p>制作维护:国家气象中心预报系统开放实验室 地址:北京市中关村南大街46号 邮编:100081p>
div>
div>
<div class="fl">
<dl>
<dd>
<p>技术支持邮箱:[email protected]p>
dd>
<dd>
<p>商务合作电话:010-68400393p>
dd>
<dd>
<p>商务合作邮箱:[email protected]p>
dd>
dl>
div>
div>
div>
<script>
function GetQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
if(GetQueryString("source") && GetQueryString("source") == 'cma') {
$('.logo_search').hide();
$('.logo_menu_width').height(30);
$('#footer').hide();
$('a').each(function(k,v){
var $this = $(this);
var href = $this.attr('href');
if(href.length > 0) {
if(href.indexOf('?') < 0){
$this.attr('href', href + '?source=cma');
} else {
$this.attr('href', href + '&source=cma');
}
}
});
}
script>
<script type="text/javascript" src="http://image.nmc.cn/static2/??site/nmc/themes/basic/js/jquery.cookie.js?v=20180325,site/nmc/themes/basic/js/common.js?v=20180325,site/nmc/themes/basic/js/jquery.lazyload.js?v=20180325">script>
<div style="display:none;">
<script src="https://w.cnzz.com/c.php?id=1254743953&l=3" language="JavaScript">script>
<script type="text/javascript">
var cnzz_protocol = (("https:" == document.location.protocol) ? " https://" : " http://");
document.write(unescape("%3Cspan id='cnzz_stat_icon_1254743953'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "w.cnzz.com/c.php%3Fid%3D1254743953' type='text/javascript'%3E%3C/script%3E"));
script>
div>
<input type="hidden" name="页面生成时间" value="2018-07-20 07:42:16">
body>
html>