目录

充电学习中...

标签: C# (2)

神器CefSharp在爬虫方面的应用

神器CefSharp在爬虫方面的应用 一、前言概述 提起Web端的自动化,模拟渲染,相信虫子们都能想到一些比较流行的框架,例如Selenium,Puppeteer等。其中Selenium利用的是WebDriver,支持Python,Java,.Net等多种语言,而Puppeteer出自谷歌之手,基于nodejs。两者的底层都是通过DevTools Protocol来操控Chrome的。诚然,这两个框架在Web自动化领域的应用非常强大,其中Puppeteer更是可以对网络请求进行拦截,但是用在爬虫上,hhhhhh,先放张图撑撑场面: 你可能不服,别急,继续往下看就知道了。 自动化测试框架为开发者(这里只针对爬虫而言)带来了很多方便,例如处理ajax请求的动态加载,前端JS混淆加密,人机验证,请求拦截等,但是却有个致命的缺点,就是拥有很多和正常浏览器不同的特征,而这些特征一旦被侦测到,爬虫就无法再进行下去,而目前的大厂们,几乎都或多或少的会进行检测,例如瑞数加密的JS,淘宝Web端页面等,均有检测代码。下面给出几个检测及绕过检测点的例子: 反爬虫中chrome无头浏览器的几种检测与绕过方.....

dotnetcore填坑汇总

1.NET Core使用System.Drawing.Common在Docker环境下报错的问题 在使用VS2019生成的Dockerfile文件进行docker部署.net core 2.2webapi项目时,运行项目报错,大概意思是"找不到库文件libdl",查阅资料发现是引用了ystem.Drawing.Common的原因。下面给出解决方法(解决方案来源): 首先需要让VS自动生成的dockerfile进行bulid时支持apt-get命令,在Dockerfile中加入以下命令 RUN sed -i 's/http:\/\/archive\.ubuntu\.com\/ubuntu\//http:\/\/mirrors\.163\.com\/ubuntu\//g' /etc/apt/sources.list 然后安装libc6-dev,在Dockerfile中加入以下命令 RUN apt-get update RUN apt-get install -y --no-install-recommends libgdiplus libc6-dev 最终dockerfile修改如下图......