Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
/ Gworm Public

Gworm是一个java版的用以提取指定网址中特定部分数据,以json格式返回的库。使用场合举例:获取电商平台的搜索结果、博客内容、对没有提供api接口的网站通过提取html制作DIY的接口。

Notifications You must be signed in to change notification settings

lp0601/Gworm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

5 Commits

Repository files navigation

Gworm

Gworm是一个java版的用以提取指定网址中特定部分数据,以json格式返回的库。使用场合举例:获取电商平台的搜索结果、博客内容、对没有提供api接口的网站通过提取html制作DIY的接口。

使用说明

本库需要引用JsoupDom4j

//初始化单例GwormBox
GwormBox gwormBox = GwormBox.getInstance();
//初始化request参数
RequestProperties rp = RequestProperties.getInstance();
rp.initProperties(new FileInputStream(new File("request.properties")));
//添加爬去规则,amazonKey对应规则文件的路径amazon.xml
gwormBox.addWormConfigPath("amazonKey", "amazon.xml");
//返回链接 http://www.amazon.cn/s/ref=nb_sb_noss_2?field-keywords=算法 内提取的数据(json格式)
String json = gwormBox.getJson("amazonKey", "http://www.amazon.cn/s/ref=nb_sb_noss_2?field-keywords=算法" , "amazonSearch");

规则文件

amazon.xml 如下

<?xml version="1.0" encoding="UTF-8" ?> 
<gworm> 
	<url id = "amazonSearch"> 
	 <array id = "amazonSearchArray" rule = "#rightResultsATF .s-item-container" >
	 <object>
	 <value id = "productName" rule = "h2" get = "text" />
	 <value id = "productPrice" rule = ".a-color-price" get = "text" />
	 <value id = "productImg" rule = "img" get = "attr src" />
	 <value id = "productUrl" rule = "a" get = "attr href" />
	 </object>
	 </array>
	</url>
</gworm> 
		

所有规则都必须写在gworm标签中间。 下一级标签为url,通过id 区分处理不同内容的网址。下一级标签为array或object ,提取数组信息使用array,提取单一信息使用object, array与object标签可以互相嵌套, array与object的id 属性可以忽略。最后接value标签,对应提取项。rule属性用于 css选择器,object标签可以忽略 rule属性。get属性用以表明如何提取数据,可以有三种方式, text:提取css选择器对应的 Elements的文本段,attr 属性:提取css 选择器对应的Elements中指定属性的值,html:提取css 选择器对应的Elements。

爬取参数

request.properties 如下

Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding=gzip, deflate, sdch
Accept-Language=zh-CN,zh;q=0.8
Connection=keep-alive
User-Agent=Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36

实例链接

使用上述配置获取亚马逊搜索巧克力的json数据。

About

Gworm是一个java版的用以提取指定网址中特定部分数据,以json格式返回的库。使用场合举例:获取电商平台的搜索结果、博客内容、对没有提供api接口的网站通过提取html制作DIY的接口。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /