如何把这个网站中的数据用JAVA代码提取出来

2024-05-11 19:24

1. 如何把这个网站中的数据用JAVA代码提取出来

使用正则表达式获取数据,先用URL对象读取页面数据,你想怎样得到数据的格式,你自己斟酌
import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Egg{	/**	 * 	 * Function: getHTML	 * 	 * Description: 根据url链接得出页面html数据	 * 	 * @param spec	 *            String 待搜查的url链接地址	 * @param charsetName	 *            String 页面的字符编码	 * @Return String 页面html数据字符串	 */	public static String getHTML(String spec, String charsetName)	{		try		{			URL url = new URL(spec);			HttpURLConnection huc = (HttpURLConnection) url.openConnection();			InputStreamReader isr = new InputStreamReader(huc.getInputStream(), charsetName);			BufferedReader br = new BufferedReader(isr);			StringBuilder builder = new StringBuilder();			String line = null;			while(null != (line = br.readLine()))			{				builder.append(line);			}			br.close();			isr.close();			huc.disconnect();			return builder.toString();		}		catch(Exception e)		{			e.printStackTrace();		}		return "";	}	/**	 * 	 * Function: getYearDate 	 * 根据年份获取当年的每个月的数据	 * 	 * @param html	 *            String 待搜索的页面数据字符串	 * @param year	 *            String 待搜索的年份关键字	 */	public static List getYearDate(String html, String year)	{		String regex = "(?i)\\s*" + year + "(?:(?!).)+()?";		Pattern pattern = Pattern.compile(regex);		Matcher matcher = pattern.matcher(html);		String result = "";		while(matcher.find())		{			result = matcher.group();			break;		}		regex = "(?i)]*>\\s*([^\\s\\s*([^ list = new ArrayList();		while(matcher.find())		{			String data1 = matcher.group(1);			String data2 = matcher.group(3);			data2 = null == data2 ? "" : data2;			list.add(data1 + data2);		}		return list;	}	public static void main(String[] args)	{		String html = getHTML("ht和谐tp://legacy.bas.ac.uk/met/READER/surface/Amundsen_Scott.00.temperature.html", "utf-8");		List list = getYearDate(html, "2015");		System.out.println(list);	}}

如何把这个网站中的数据用JAVA代码提取出来

2. 用java怎么才能抓取指定的数据

应该是一个网络应用吧,如果本地应用就靠正则表达式和字符串的方法。网络 请求之后也是跟本地一样的处理方法。

3. 怎么java抓取数据并存到数据库中

这类问题最难为人,抓取网络数据 ,本地数据 
网络数据妞直接使用网络请求接口请求数据,数据格式是xml还是Jason 按照个子的解析方式解析数据,存入数据库就好

怎么java抓取数据并存到数据库中

4. 用Java来实现抓取数据的问题

你可以利用jsoup来抓取HTML页面的信息
Document doc = Jsoup.parse(input,"UTF-8","http://www.oschina.net/"); 

 Elements links = doc.select("a[href]"); // 具有 href 属性的链接
 Elements pngs = doc.select("img[src$=.png]");// 所有引用 png 图片的元素


 Element masthead = doc.select("div.masthead").first(); 
 // 找出定义了 class=masthead 的元素

 Elements resultLinks = doc.select("h3.r > a"); // direct a after h3

5. java怎么抓取需要登录后的网站数据

一般爬虫都不会抓登录以后的页面, 如果你只是临时抓某个站,可以模拟登录,然后拿到登录以后的Cookies,再去请求相关的页面。

java怎么抓取需要登录后的网站数据

6. 如何通过Java代码实现对网页数据进行指定抓取

在工程中导入Jsoup.jar包

获取网址url指定HTML或者文档指定的body

获取网页中超链接的标题和链接

获取指定博客文章的内容

获取网页中超链接的标题和链接的结果

7. 如何通过Java代码实现对网页数据进行指定抓取

  在工程中导入Jsoup.jar包


  获取网址url指定HTML或者文档指定的body

  获取网页中超链接的标题和链接


  获取指定博客文章的内容


   获取网页中超链接的标题和链接的结果

如何通过Java代码实现对网页数据进行指定抓取

最新文章
热门文章
推荐阅读