`
liujunhui1988
  • 浏览: 10001 次
社区版块
存档分类
最新评论

java爬取网页源代码,解析

阅读更多

1.搜索词的地址采用模拟地址方法(通过分析搜索引擎的参数得到,如百度),然后将搜索词加到模拟的地址中。

2.函数的输入参数是模拟地址。

String query = URLEncoder.encode("潘柱廷", "UTF-8");

String url="http://www.baidu.com/s?wd="+query+"&pn="+p*10+"&tn=baiduhome_pg&ie=utf-8"

public void MakeQuery(String domain) {
  try {
   HttpClient httpClient = new HttpClient();
   GetMethod getMethod = new GetMethod(domain);
   
   //System.out.println("*************************************************************");
   //System.out.println(getMethod);

   try{
    httpClient.executeMethod(getMethod);
    }catch(Exception e){
     System.out.println("网络问题");
    }
   getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
     new DefaultHttpMethodRetryHandler());

   int statusCode = httpClient.executeMethod(getMethod);
   if (statusCode != HttpStatus.SC_OK) {
    System.err.println("Method failed: "
      + getMethod.getStatusLine());
   }
   
   
   byte[] responseBody = getMethod.getResponseBody();
   
   //System.out.println("*************************************************************");
   //System.out.println(responseBody);
   
   
   
   String response = new String(responseBody, "UTF-8");
   
   //System.out.println("*************************************************************");
   //System.out.println(response);
   
   //Jsoup解析html
   Document doc=Jsoup.parse(response);
   //System.out.println("*************************************************************");
   //System.out.println(doc);
  
 
   
   Elements contents=doc.getElementsByClass("f");
   for(Element content:contents){

   Element links = content.getElementsByTag("a").first();
     String linkHref = links.attr("href");//链接
     String linkText = links.text();//摘要
     FoursearchZH.map.put(linkHref, linkText);
    
     System.out.println("------------------");
     System.out.println(linkHref);
        System.out.println(linkText);
    }
  
  } catch (Exception e) {
   System.err.println("Something went wrong...");
   e.printStackTrace();
  }
  }

分享到:
评论

相关推荐

    利用java定时爬取网页数据

    在描述中提到的“完整爬取数据源码及jar”,意味着这个压缩包可能包含了一个已经编译好的Java应用和相关的源代码。源码可能包含了以下组件: 1. HTTP请求库:如Apache HttpClient或者OkHttp,用于向目标网站发送GET...

    java爬取各大平台价格

    压缩包中的"com"文件可能包含了项目的源代码组织结构,通常在Java项目中,"com"是顶级包名,下面可能有多个子包,分别存放不同模块的代码,如"util"用于存放工具类,"model"用于定义数据模型,"controller"或...

    java爬取网页表格的例子(运行环境myeclipse)

    这些文件可能包括Java源代码文件(如"Crawler.java"),以及可能的测试数据或配置文件。通过阅读和运行这些代码,你可以更深入地理解如何在Java和MyEclipse环境下实现网页表格的爬取。 总的来说,这个例子展示了...

    企查查信息爬取代码.zip

    【标题】"企查查信息爬取代码.zip"所涉及的知识点主要...实际学习时,应结合源代码深入理解每个部分的功能和作用,逐步掌握企查查信息爬取的全过程。同时,注意不断更新和优化代码,以适应网站的变化和提高爬取效率。

    java爬取亚马逊的Iphone信息

    2. **HTML解析**:获取到网页源代码后,我们需要解析HTML以提取所需信息。Java中常用的HTML解析库有Jsoup,它提供了一套简洁的API,使我们能够通过CSS选择器定位元素,进而提取文本、属性等信息。理解HTML结构和CSS...

    Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar

    Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar Java开发案例-springboot-17-整合WebMagic实现爬取和解析CSDN文章数据-源代码+文档.rar Java开发案例-springboot-17-整合...

    Java爬取CSDN博客源码

    在这个项目中,开发者编写了一个爬虫程序,虽然存在一些小问题,但基本功能已经实现,可以用来获取CSDN博客的源代码内容。下面我们将详细探讨相关的知识点。 首先,我们要了解Java在网络爬虫领域的应用。Java作为一...

    java爬取亚马逊的Iphone信息.zip

    这个压缩包可能包含了源代码、日志、配置文件等资源,便于理解和复现爬取过程。下面我们将详细探讨Java爬虫在抓取亚马逊iPhone信息时涉及的关键知识点。 首先,Java是一种广泛使用的编程语言,尤其适合开发大型、可...

    基于http的Java爬虫爬取百度新闻

    百度新闻通常会将新闻标题、摘要、发布时间等信息放在特定的HTML标签内,通过查看网页源代码或使用开发者工具,可以找出这些元素的标识。 在实际项目中,还应考虑以下几个方面: - 反爬虫策略:许多网站会设置反...

    淘宝天猫商品详情爬取

    接着,我们可以编写代码,使用requests库的get()函数发送GET请求到该URL,获取网页源代码。 例如: ```python import requests url = 'https://item.taobao.com/xxxxx.html' # 商品页面URL response = requests....

    java一键爬取全球疫情

    4. `src`:源代码目录,其中可能包含了项目的主类以及其他负责爬取、解析和处理数据的相关类。 5. `.idea`:这是IntelliJ IDEA的工作区文件夹,包含了项目的配置信息、运行配置、VCS集成设置等,是IDE特有的工作目录...

    BlogJava博客文章爬取代码

    综上所述,"BlogJava博客文章爬取代码"项目涵盖了Java网络爬虫的基础知识和实践技巧,涉及网络请求、HTML解析、数据处理、并发控制等多个层面。通过学习和实践这个项目,开发者可以提升自己在网络爬虫领域的技能。

    JAVA爬虫项目源代码

    【JAVA爬虫项目源代码】是一个使用JAVA编程语言编写的爬虫项目,它结合了多线程编程和队列管理技术来提升数据抓取的效率和并发性。在这个项目中,开发者利用了以下核心技术: 1. **HttpClinet**:HttpClinet是Java...

    1.(地图数据篇)天地图瓦片数据爬取--java代码.zip

    在提供的“DownMap_tianditu.java”源代码中,可以看到具体的实现细节,如URL构造、网络请求逻辑、文件保存策略等。而“image.png”可能是爬取过程中的示例瓦片或者爬虫工作原理的示意图。通过阅读和分析这个代码,...

    博客园文章爬取代码

    5. **使用Eclipse打开**:Eclipse是一个广泛使用的Java集成开发环境(IDE),项目文件夹`BlogCrawler`包含了源代码、配置文件和可能的依赖库。用户需要在Eclipse中导入该项目,然后编译并运行代码。 此外,值得注意...

    Java爬虫进阶:高效爬取CSDN技术文章.zip

    这个项目不仅提供了源代码,还有说明文档,帮助用户理解并运行代码,前提是你已经在本地环境中配置了Java开发环境。 首先,我们要理解什么是网络爬虫。网络爬虫,又称为网页蜘蛛或自动索引,是一种自动化程序,它...

    搜索网页采集网络爬虫java源代码

    本压缩包文件包含的"搜索网页采集网络爬虫java源代码"为开发者提供了一个实现这一功能的实例。 首先,让我们深入了解一下Java网络爬虫的基础知识: 1. **HTTP协议**:网络爬虫的基础是HTTP(超文本传输协议),它...

    java爬虫 jsoup爬取 斗图啦

    解析网页时,可以使用`select()`方法配合CSS选择器定位到图片元素: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; ...

    Java爬虫网页上的所有链接网址.zip_java 网页爬虫_java网页爬虫_爬取所有链接_网页爬虫链接

    在这个案例中,"Robot.java"很可能就是实现了这样的功能,通过发送HTTP GET请求到目标网页,获取HTML源代码,然后解析HTML来提取出所有的链接。 在"Robot.java"中,主要的步骤可能包括: 1. **建立HTTP连接**:...

    基于java开发的搜索引擎系统附源代码

    【标题】:“基于Java开发的搜索引擎系统附源代码”是一个以Java编程语言为基础构建的搜索引擎项目的实践案例。这个项目不仅提供了完整的源代码,而且适用于Java技术的学生或开发者作为毕业论文的研究对象,帮助他们...

Global site tag (gtag.js) - Google Analytics