范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Python爬虫会遇到的难题,如何破解滑动验证码

  做爬虫总会遇到各种各样的反爬限制,反爬的第一道防线往往在登录就出现了,为了限制爬虫自动登录,各家使出了浑身解数,所谓道高一尺魔高一丈。
  今天分享个如何简单处理滑动图片的验证码的案例。
  私信小编01即可获取大量Python学习资源
  类似这种拖动滑块移动到图片中缺口位置与之重合的登录验证在很多网站或者APP都比较常见,因为它对真实用户体验友好,容易识别。同时也能拦截掉大部分初级爬虫。
  作为一只python爬虫,如何正确地自动完成这个验证过程呢?
  先来分析下,核心问题其实是要怎么样找到目标缺口的位置,一旦知道了位置,我们就可以借用selenium等工具完成拖动的操作。
  我们可以借用opencv来解决这个问题,主要步骤:
  opencv 是什么?
  OpenCV(Open Source Computer Vision Library)是开放源代码计算机视觉库,主要算法涉及图像处理、计算机视觉和机器学习相关方法,可用于开发实时的图像处理、计算机视觉以及模式识别程序。
  直接安装 pip install opencv-python
  首先将图片进行高斯模糊处理,高斯模糊的主要作用是减少图像的噪声,用于预处理阶段。 import cv2 as cv image = cv.imread(image_path) blurred = cv.GaussianBlur(image, (5, 5), 0) cv.imshow("blurred", blurred)
  处理后的效果
  接着用Canny边缘检测到得到一个包含"窄边界"的二值图像。所谓二值图像就是黑白图,只有黑色和白色。 canny = cv.Canny(blurred, 200, 400) cv.imshow("canny", canny)
  轮廓检测 contours, hierarchy = cv.findContours(canny, cv.RETR_CCOMP, cv.CHAIN_APPROX_SIMPLE) for i, contour in enumerate(contours):  # 所有轮廓     x, y, w, h = cv.boundingRect(contour)  # 外接矩形     cv.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2) cv.imshow("image", image)
  找出所有的轮廓,并用红色线框将其绘制标识出来了,看出来大大小小有几十个轮廓
  剩下的问题就好办了,我们只需要对轮廓的面积或者周长范围做限制,就能过滤出目标轮廓的位置, 前提是我们对目标位置的轮廓大小是预先确定的。 for i, contour in enumerate(contours):  # 所有轮廓     if 6000 < cv.contourArea(contour) <= 8000 and 300 < cv.arcLength(contour, True) < 500:         x, y, w, h = cv.boundingRect(contour)  # 外接矩形         print(x, y, w, h)         cv.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2)         cv.imshow("image", image)         # 找目标缺口,第一个可能是滑块         if x <= 200:             continue         return x + int(w / 2), 675
  轮廓的面积大概是6000到8000之间,周长在300到500之间, 最后用外接矩形获取该轮廓图的坐标位置和宽高大小。
  如上就找到了目标位置,剩下的工作就是将滑块移动到指定位置即可

个人跨境代购逐渐离场为跨境电商平台发展创造机会央广网北京1月5日消息(总台央广记者周益帆)此前有分析显示,2021年,65。3的用户认为自己使用跨境电商平台的频率有所增多根据天眼查的数据,2021年,我国新增跨境电商企业在5万关于智慧移动电动车的机遇2007年,苹果开启了智慧手机的大浪潮2021年,特斯拉市值突破1兆美元,引爆了全球智慧电动车的新世代契机。未来十年,电动车的商机毫无疑问的,将比过去十年智慧手机的商机还要巨大!如雷军放话一步步超越苹果,可小米手机为什么越卖越便宜?作者马志刚封面来源小米微博正式对标苹果,向苹果学习,一步一步超越苹果。12月28日晚间,在小米12新品发布会上,小米集团董事长兼CEO雷军一改往日侧面蹭苹果的遮掩,第一次大大方方向ES6知识点ES6知识点变量声明变量值的结构模板字符串箭头函数变量声明1。let关键字let关键字用来声明变量,使let声明的变量有几个特点声明的变量有几个特点1。不允许重复声明2。块二级作用世界女性科技群落(五)数字化黄金时代,东南亚女性都是隐藏的阿尔法图片来源视觉中国文脑极体当我们谈及亚洲最具增长活力的区域,以往总是将重点放在中国大陆。实际上,广泛的亚洲大陆还有许多区域在上演经济传奇,东南亚就是一个。目前,越南印度尼西亚柬埔寨和今年冬天有点冷(一)2022年1月3日,一个朋友的教育机构正式给学生办理结课退费流程了。因为什么原因那?容我给您娓娓道来。大概在两年前,这个朋友因为热爱教育也觉得教育行业有发展前途,没有和家人商量的情你认为当今社会,人类最牛B的发明是什么?钞票!人类为了它干出来了好多好多匪夷所思的事情来,无论政治思想,道德,法律,科技,文学,战争,比赛等等,都是通过金钱钞票的操控来实现的!电水泥抗生素都很牛B。很明显又简单,手机。我商务部到2025年具备条件地区基本实现县县有中心乡乡有网点村村有服务商务部流通发展司国家邮政局市场监管司会同有关单位起草关于加快贯通县乡村电子商务体系和快递物流配送体系有关工作的通知(征求意见稿),现就有关工作目标主要任务保障措施及公平性等向社会公华为Mate50Pro多优秀?5070mAh电池,HarmonyOS3正式版,没5G也买进入2022年,或许最值得期待的新机就是HUAWEIMate50系列了!为什么这样说呢?华为其实还是国产中热度最高的手机品牌,很多人其实都在等着华为发布5G新机。而Mate系列是华特斯拉在新疆开店,为何让美国政客慌张?来源中央广电总台国际在线编辑赵妍因近日在中国新疆地区新开一家展销厅,美国车企特斯拉遭到本国政客的多番攻击。美反华政客卢比奥,也是所谓维吾尔强迫劳动预防法案主要推动者第一时间在社交媒新能源电池寿命锂电池有两种不同类型现在的新能源车基本上用的都是锂离子电池。但根据其正极材料不同,锂离子电池也分为不同的类型。它用在新能源动力电池上有两种,一种是磷酸锂铁电池。另一种是包含有钴锰镍
疑似谷歌首款智能手表PixelWatch真机现身谷歌将在5月份举行IO2022活动,有消息指出,这家搜索引擎巨头还将展示新的硬件,如Pixel6a中端手机和其有史以来第一款智能手表PixelWatch。最近,有人在英国的一家餐馆5月11日生效谷歌禁止安卓手机第三方通话录音PChome手机频道报道谷歌将在5月11日起,阻止第三方应用请求AccessibilityAPI进行远程通话录音。受此影响,所有第三方应用将无法使用通话录音功能。谷歌方面声称,这一不止iPhone14?AppleWatch或将也支持卫星通信功能近日有关于iPhone14系列的消息越来越多,其中传闻iPhone14上搭载的卫星通信功能的消息引起了大家注意,而最近又有消息显示,AppleWatch可能也会采用卫星通信功能。此iOS16或将移除对iPhone6S支持网友我的6s终于要退休了苹果2022年WWDC(全球开发者大会)定在6月6日举办,不出意外的话,iOS16将是最令人期待的主角。根据LeaksApplePro的最新爆料,iOS16确定移除对iPhone6苹果出手买卫星,未来iPhone将支持卫星通讯最近,来自彭博社的MarkGurman爆料称,苹果未来的设备将会支持卫星通信功能,主要用于紧急服务和SOS报警功能。今年2月份,苹果的卫星合作伙伴Globalstar表示自己与一位AYANEO正式开启超轻薄掌机产品线,并命名为AYANEOAIR最新消息,AYANEO宣布其首款超轻薄OLED掌机产品线命名为AYANEOAIR,首款产品的重量由此前预热的低于500g改为了低于420g。AIR,以空气之名寓意轻薄,开创Wind华为WatchGT3Pro将发布,首款支持自由潜水功能的手表再过几天就是华为的新品发布会了,华为此前就宣布在4月28日发布最新款的智慧屏VPro和MateXs2折叠屏手机,虽然官方没有透露出这两款新品的参数配置,但是在网上还是可以看见一些关红魔7系列变形金刚版发布红米K50S系列处理器曝光华为WatchGT3Pro手表官宣4月25日,星期一,欢迎收看今天的科技V报,我是龙二Pro,今天,华为官方正式确定,旗下首款支持自由潜水功能的智能手表华为WATCHGT3Pro系华为WatchGT3Pro手表官宣,将于4月28日发布IT之家4月25日消息,华为官宣将于4月28日的折叠旗舰及全场景新品发布会推出WatchGT3Pro手表,口号为这一刻,向自由潜行。从官方放出的宣传视频可以看到,华为WatchGT马斯克给俄军上了一课?商业公司也会打电子战,美军直呼内行自俄乌冲突爆发后,全球首富马斯克常常因各种涉及军事的出格言论,屡屡出现在大众视野中。上个月,马斯克扬言要与普京一对一单挑,而赌注就是乌克兰。值得注意的是,在网友或是吹捧或是质疑的眼推特与马斯克达成440亿美元收购协议当地时间4月25日,社交媒体平台推特公司接受了埃隆马斯克的收购协议。根据协议,马斯克将以每股54。2美元,总计约440亿美元的价格收购推特。马斯克当天在推特上表示,希望该公司能够继