【问题标题】:Is it able to retrieve website content by Crawler4j?是否能够通过 Crawler4j 检索网站内容?
【发布时间】:2017-01-19 07:26:04
【问题描述】:

我对 Java 很陌生。

现在,我想使用 Google 新闻搜索 -keyword: "toy" 从第 1 页到第 10 页检索新闻文章内容。

https://www.google.com/search?q=toy&biw=1366&bih=645&tbm=nws&source=lnms&sa=X&ved=0ahUKEwiTp82syoXPAhUMkpQKHawZBOoQ_AUICygE

即从第 1 页到第 10 页检索 100 条新闻内容。(假设每页有 10 篇新闻文章)

读完之后 Crawler4j vs. Jsoup for the pages crawling and parsing in Java

我决定尽可能使用 Crawler4j

给出基本 URI(主页)

获取每个页面的所有 URI 并检索这些内容 也。

为您检索的每个 URI 递归移动。

仅检索本网站内的 URI 的内容(有 可能 引用另一个网站的外部 URI,我们不需要这些)。

在我的情况下,我可以将谷歌搜索页面从 p1 到 p10。如果我设置 intnumberOfCrawlers=1,它会返回 100 篇新闻文章


但是,当我尝试 Crawler4j 的快速入门 example

它只返回从原始链接中找到的外部链接。 像这些:

    URL: http://www.ics.uci.edu/~lopes/
Text length: 2619
Html length: 11656
Number of outgoing links: 38
URL: http://www.ics.uci.edu/~welling/
Text length: 4503
Html length: 23713
Number of outgoing links: 24
URL: http://www.ics.uci.edu/~welling/teaching/courses.html
Text length: 2222
Html length: 15138
Number of outgoing links: 33
URL: http://www.ics.uci.edu/
Text length: 3661
Html length: 51628
Number of outgoing links: 86

因此,我想知道crawler4j 是否可以执行我提出的功能。或者我应该使用crawler4j +JSouptogether 吗?

【问题讨论】:

    标签: java parsing web-crawler jsoup crawler4j


    【解决方案1】:

    crawler4j 尊重爬虫政策,例如robots.txt。在您的情况下,此文件是以下one

    检查此文件显示,不允许抓取您给定的种子点:

     Disallow: /search
    

    因此,您将无法抓取给定站点,除非您将classes 修改为忽略robots.txt。但是,这不被视为礼貌,也不符合爬虫道德规范。

    【讨论】:

      【解决方案2】:

      您的帖子有很多问题我会尽力回答:

      “是否可以通过 Crawler4j 检索网站内容?”

      1. 是的,正如 github 源代码上的示例所演示的那样
      2. 但是,对于更高级的 DOM 解析/操作,我建议您添加 Jsoup。这是Jsoup 的文档

      “所以,我不知道 crawler4j 是否可以执行我提出的功能。或者我应该使用 crawler4j +JSouptogether 吗?”

      1. 使用 Crawler4j 做它最棒的事情,Crawling
      2. 使用 Jsoup 通过便捷的 API 提取和操作数据

      "它只返回从原始链接中找到的外部链接。像这些"

      • BasicCrawler 中,您需要在return href.startsWith("http://www.ics.uci.edu/"); 处添加允许网址,修改以包含更多内容
      • BasicCrawlController 中,您需要在此处添加页面种子config.setMaxDepthOfCrawling(2);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-05-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多