.net 爬虫框架技术选型

个人认为爬虫框架分抓取框架和分析框架

1)抓取框架

.net 市面上好的似乎不多,选择要素分两种:1.轻量型,2.重量型。

1. 轻量型是可以定制一些特殊的功能或者插件开关形式。总体性能高,速度快。

   自己写的webclient,httprequest,httpclient等。或者直接socket编写!

2. 重量型是可以基本模式浏览器,更加傻瓜化,也基本屏蔽了一些反爬虫机制。

   如webbrower或者其他的webkit浏览器内核封装的.net框架。

   如:https://github.com/cefsharp/CefSharp (.NET (WPF and Windows Forms) bindings for the Chromium Embedded Framework


抓取的特殊功能包括:cookie支持(默认),301自动跳转,https默认支持,gzip等压缩默认支持,自动多种方式识别编码,默认模拟浏览器header,模拟css和js执行等等。

当然越是功能强大,性能越差些,但是适应各种情况的能力越强(反爬虫能力),轻量型和重量型适应的抓取场景也都不一样。

如:携程的高级手法


技术选择:

HttpHelper(作者是收费的,看了源码,其实功能也不强大;自己也能做,只是原来写的http框架源码没了,急着用暂时用下)

scrapysharp 中的ScrapingBrowser

.net HttpWebRequest 简单封装下

.net webclient 简单封装下


2)分析框架

旧技术:正则表达式

新方式: scrapysharp,HtmlAgilityPack,CsQuery 等等(还有很多)

scrapysharp:扩展自HtmlAgilityPack,非常好用。(支持css选择器方式,快速上手)

css的选择器语法:http://www.w3school.com.cn/cssref/css_selectors.asp

  参考资料: http://www.cnblogs.com/arxive/p/7075306.html

示例

 

HtmlAgilityPack:本来就好用,但是用的时候还是要进行部分算法处理。(支持xpath方式获取,快速上手)

百度一下,资料不少。

示例

 

CsQuery:似乎对中文 的支持有bug,获取html的时候,中文会乱码,不知道为什么。(支持jq(jquery)方式获取,快速上手)

https://github.com/jamietre/CsQuery

示例

 

Csoup

.net 版本的jsoup。当然csoup的相关文档少,建议直接看jsoup的文档(也一样的)。(支持jq(jquery)的方式获取,快速上手)

地址: http://nsoup.codeplex.com/

文档:http://www.open-open.com/jsoup/

 

欢迎交流,一起了解爬虫技术更多知识,完善技术栈,.net 开源因你更美好。开源QQ群: .net 开源基础服务  238543768

by 车江毅

转载于:https://www.cnblogs.com/chejiangyi/p/7211277.html

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值