使用环境:
Visual Studio 2015 or later
.NET 4.5 or later
如果想使用 .NET CORE 请按照官方说明安装 .NET CORE 开发环境: https://www.microsoft.com/net/core#windows
概述:
在上一篇也讲到过,实现一个完整的爬虫需要4大模块:下载器(已有实现),URL调度(已有实现),数据抽取(需要自己实现),数据存储(需要自己实现),因此,只需要实现数据抽取、数据存储这两个模块就可以完成一个爬虫了。
新建一个Console 项目:
右键项目的Manage NuGet Packages(管理NuGet包)
搜索DotnetSpider2, 从结果列表中选中DotnetSpider2.Core并安装到控制台项目中
定义数据对象:
需要注意的是
Page 对象中Selectable属性是由下载的HTML构造的选择器容器,调用Seletable的接口就可以进行Xpath,Css, JsonPath,Regex的查询;
Selectable的GetValue传入true时会把结果去HTML标签;
把组装好的对象,如上面的 YoukuVideo List, 保存到page的ResultItem中,并指定一个唯一的Key;
定义数据管道(继承BasePipeline这个抽象类):
数据管道可以通过在PageProcessor中指定的唯一Key,取出需要处理的数据存入想要的数据库或文件中
初始化起始链接并运行
通过AddStartUrl可以添加爬虫的起始链接后,调用Run方法运行爬虫
运行结果
设置目标页抽取
以上只是采集了初始的一个链接,如何达到翻页(遍历)效果继续采集直的最后一页呢?只需要在PageProccessor中解析出符合规则的目标页,并加入到Page对象的TargetRequests这个List中即可。我们做如下改动:
重新运行爬虫后,可以看到已经实现的翻页
代码地址:https://github.com/zlzforever/DotnetSpider
成都it培训哪家好,当然是成都达内培训,成都达内是一家专业的程序员培训机构,专注于成都嵌入式培训,成都web前端培训,成都.NET培训,成都大数据培训,成都会计实操培训,成都IT培训,成都编程培训等IT培训,专业的成都软件培训机构,专业师资授课,真实项目实战、零首付、低押金、名企就业。
(责任编辑:成都达内)