由于公司业务需要,需要做一个关键词信息抓取程序,就利用web-webharvest做了一个抓取程序。
java程序:
import java.io.IOException;
import org.webharvest.definition.ScraperConfiguration;
import org.webharvest.runtime.Scraper;
public class BaiduQ {
public static void main(String[] args) throws IOException {
ScraperConfiguration config = new ScraperConfiguration("E:/webharvest/baiduQ.xml");
Scraper scraper = new Scraper(config, "E:/webharvest");
String sd = "玩具";
scraper.addVariableToContext("baiduURL", new String("http://www.baidu.com/s?wd="+sd));//设置查询地址
scraper.addVariableToContext("fileName", new String(sd));//设置查询结果保存文件
scraper.setDebug(true);
scraper.execute();
}
}
对应baiduQ.xml:
<config charset="gbk">
<!-- 页面爬取开始,按照关键词:来搜索 -->
<var-def name="start" id="startpage">
<!--获得类中传入连接地址-->
<var-def name="baiduURL" overwrite="false"></var-def>
<!--获得类中传入存储文件名-->
<var-def name="fileName" overwrite="false"></var-def>
<html-to-xml>
<http url="${baiduURL}"/>
</html-to-xml>
</var-def>
<!-- 获取网站列表 -->
<var-def name="urlList" id="urlList">
<xpath expression="//table[@class='result']">
<var name="start"/>
</xpath>
</var-def>
<!-- 循环 urlList ,并把结果写入到XML文件中 -->
<file action="write" path="${fileName}.xml" charset="utf-8">
<![CDATA[ <catalog> ]]>
<loop item="item" index="i">
<list><var name="urlList"/></list>
<body>
<xquery>
<xq-param name="item" type="node()"><var name="item"/></xq-param>
<xq-expression><![CDATA[
declare variable $item as node() external;
let $name := data($item//tr/td/a/font)
let $url := data($item//tr/td/a[1]/@href)
return
<website>
<name>{normalize-space($name)}</name>
<url>{normalize-space($url)}</url>
</website>
]]></xq-expression>
</xquery>
</body>
</loop>
<![CDATA[ </catalog> ]]>
</file>
</config>
该程序运行后是把结果存入xml中,基本解决了抓取的问题。
分享到:
相关推荐
爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统爬虫游戏-数据抓取分析系统...
在这个主题中,我们将深入探讨Web-Harvest的基础知识,特别是如何利用它来抓取Java代码进行分析。在进行数据采集时,理解配置文件、抓取类以及所需依赖的JAR包是至关重要的。 首先,让我们从配置文件开始。Web-...
php 抓取百度搜索结果脚本,php命令行下运行
本教程将深入探讨如何使用Python来构建一个简单的爬虫,抓取百度百科的前1000个页面,以获取其内容和结构信息。首先,我们需要了解Python爬虫的基本原理和所需的库。 1. **Python爬虫基础**: - **HTTP协议**:...
抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.pdf抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.pdf抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.pdf抓取策略--Web信息检索与数据抓取-...
抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.ppt抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.ppt抓取策略--Web信息检索与数据抓取-反向链接数策略--拓展.ppt抓取策略--Web信息检索与数据抓取-...
比如,你想采集标题中包含“58同城”的SERP结果,并过滤包含有“北京”或“厦门”等结果...#采集SERP搜索结果标题 import urllib2 from bs4 import BeautifulSoup import time #写文件 def WriteFile(fileName,content
标题“抓取百度搜索结果——解密百度狗”所涉及的知识点主要集中在网络爬虫技术和搜索引擎的工作原理上。网络爬虫是一种自动获取网页信息的程序,它通过模拟浏览器的行为,发送HTTP请求到服务器,接收服务器返回的...
爬虫游戏-数据抓取分析系统 主要用到的技术: React:MVVM 框架,用于构建前端界面。 Ant Design:基于 React 的组件库。 Bizchats:基于 React 的图表库。 Post-CSS:CSS 处理器,提供变量、计算、嵌套、Mixin、...
1. **网页抓取(Web Scraping)**:网页抓取是指通过编程方式自动从互联网上获取所需信息的过程。在本案例中,目标是从china-pub网站上获取图书的价格信息。通常,这需要用到Python的BeautifulSoup、Scrapy等库,...
在本篇教程中,我们将详细介绍如何使用Python抓取百度搜索引擎返回的结果数据。此过程涉及到网络爬虫的基本概念和技术,包括HTTP请求、正则表达式匹配以及网页内容解析等。 #### 知识点一:Python环境搭建与库安装 ...
Android-自动抓取日志工具 v1.0
百度指数是百度提供的一项服务,它反映了关键词在百度搜索引擎中的搜索热度,可以用来分析关键词的受欢迎程度、关注度变化趋势等。因此,对百度指数进行爬取,有助于我们获取有价值的市场信息和用户行为数据。 在...
基于opencv-python开发的网球识别+机械爪自动抓取放入球筐+源码+开发文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于opencv-python开发的网球识别+机械...
网络诗人 web-poet实现了用于Web抓取... 例如,可以在开发此类代码,然后进行隔离测试,然后将其插入 Spider,或用作某些基于的自定义Web抓取框架的一部分。 当前,可以使用以下集成: Scrapy,通过 有关更多,请参见。
Web-Harvest是一个用于Web数据挖掘的开源工具,它的核心功能是通过自定义的XML配置文件来抓取和处理目标网页中的数据。该工具支持多种技术,如XPath、XQuery和正则表达式,用于从HTML文档中提取所需信息。Web-...
web-Harvest的核心在于其配置脚本,这些脚本通常使用XML格式,定义了如何从目标网站抓取数据、如何处理数据以及如何输出结果。脚本中包含了HTTP请求、XPath或XQuery表达式、数据转换和过滤规则等元素。 **五、web-...
文章提到的实验结果表明,该爬虫程序能够高效地抓取大量职位信息,并且数据结构简单易读,非常适合进一步的数据挖掘和分析。通过爬虫程序抓取得到的职位信息,用户可以自行选择想要的职位信息,例如针对特定关键词、...
【标题】:“web-scraper:抓取网站” 网页抓取,也称为网络抓取或数据抓取,是一种从互联网上提取大量数据的技术。在本项目中,“web-scraper”是一个用Python编写的工具,用于从指定的网页中提取所需信息。Python...
除了百度外,有很多网站会自动收录网上的网站,然后查询出网站的基本信息、SEO信息,百度、GOOGLE等搜索引擎的收录量,域名whois查询结果等,而这些操作的前提是要得到所有的网站域名,通过字符串组合也是一个方法...