成语采集示例

2018-07-30 11:20:00
一弗楚
原创
17
摘要:本例是针对百度汉语中的成语数据进行分析抓取,可以获取接近31,000个成语相关数据。

1、新建任务“百度成语”;


2、分析起始网址;

从百度汉语中搜索“成语”,跳转到网址“https://hanyu.baidu.com/s?wd=%E6%88%90%E8%AF%AD&device=pc&from=home”;

但是上面这个网址中的分页在源代码中不存在,因此不方便获取分页地址,但是页面分页中有总页数,因此可以使用批量网址方式的起始网址,可以在点击分页的时候为发现网址是不变的,所以不能用上面这个网址做分页,通过分析会发现分页是使用ajax获取的数据,得到网址“https://hanyu.baidu.com/hanyu/ajax/search_list?wd=%E6%88%90%E8%AF%AD&device=pc&from=home&userid=969272627&pn=2&_=1532175220681”,而其中的pn参数就是页码,所以批量网址规则为“https://hanyu.baidu.com/hanyu/ajax/search_list?wd=%E6%88%90%E8%AF%AD&device=pc&from=home&userid=969272627&pn=[地址参数]&_=1532174618041”;


3、获取内容网址

起始网址就是内容页,选择“手动设置规则获取”

从批量网址中获取到的数据是json格式,从中很容易看出basic_source_url字段就是成语的链接地址,当中有两种网址,本例中只使用百度汉语的内容,所以只采用hanyu.baidu.com域名的网址(json数据中已经有了成语相关很详细的信息,从这里也可以分析了,本例为了演示从页面中抓取,所以会继续从链接页面中获取数据);

提取规则:"http:\/\/hanyu.baidu.com\/zici\/s?wd=[参数]"

拼接规则:https://hanyu.baidu.com/s?wd=[参数1]&ptype=zici


4、内容采集规则

增加标签

cy //*[@id="pinyin"]/h2/strong

py //*[@id="pinyin"]/h2/span/b

jbsy //*[@id="basicmean-wrapper"]/div[1]

xxsy //*[@id="detailmean-wrapper"]/div[1]

cc //*[@id="source-wrapper"]/div

lj //*[@id="liju-wrapper"]/div

jyz //*[@id="synonym"]/div

fyz //*[@id="antonym"]/div

标签需要设置相应的数据处理规则,具体见视频;


5、内容发布规则

选择“保存为本地文件”

首先启用“本地文件保存”

选择保存文件格式:Csv

创建文件模板“百度成语.csv”,格式(导出和模板格式都要设置为utf-8):

cy,py,jbjs,xxjs,cc,lj,jyz,fyz

[标签:cy],[标签:py],[标签:jbjs],[标签:xxjs],[标签:cc],[标签:lj],[标签:jyz],[标签:fyz]


6、最后勾选上任务的“采网址”、“采内容”和“发布”就可以运行了,现在你就可以等待数据的下载了。



百度成语采集规则下载


发表评论
评论通过审核后显示。