最近写一个小爬虫,需要拿到邮箱信息,发现拿不到,也不是ajax接口。最后查资料发现是被Cloudflare加密起来了,有加密肯定有解密。

柠之漠然:

这个解密方式就是从那段 js 代码转换过来的

其中最主要的一句话for (e = ”, r = ‘0x' + a.substr(0, 2) | 0, n = 2; a.length – n; n += 2) e += ‘%' + (‘0' + (‘0x' + a.substr(n, 2) ^ r).toString(16)).slice( – 2);

前面的 2 位数字转化成 16 进制之后就是秘钥, 接下来的每两位字符跟秘钥异或操作之后转成16进制, 然后转换成字符

最后将所有解出来的字符拼成一起, 就得到邮箱 abc@abc.com 了

js 这边是用 urlencode 的方式

下面是复现的js解密代码:function jiemi(val) { for (e = '', r = '0x' + val.substr(0, 2) | 0, n = 2; val.length - n; n += 2) e += '%' + ('0' + ('0x' + val.substr(n, 2) ^ r).toString(16)).slice(-2); return decodeURIComponent(e)}

然后通过python调用js完美搞定:import execjs def get_js(): # f = open("./../js/my.js", 'r', encoding='utf-8') # 打开JS文件 f = open("./jiemi.js", 'r', encoding='utf-8') # 打开JS文件 line = f.readline() htmlstr = '' while line: htmlstr = htmlstr+line line = f.readline() return htmlstr  def get_des_psswd(e): js_str = get_js() ctx = execjs.compile(js_str) #加载JS文件 return (ctx.call('jiemi', e)) #调用js方法 第一个参数是JS的方法名,后面的data和key是js方法的参数  if __name__ == '__main__': print(get_des_psswd(e='30515253705152531e535f5d'))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

python邮件图片加密_Python爬虫如何应对Cloudflare邮箱加密相关推荐

  1. python爬虫文字加密_Python爬虫进阶必备 | X薯中文网加密分析

    此次来分析某个小说网站. aHR0cHM6Ly9nLmhvbmdzaHUuY29tL2NvbnRlbnQvOTM0MTYvMTM4Nzc5MTIuaHRtbA==node 分析请求 先来看看页面的请求 ...

  2. 百万年薪大佬熬夜写作,Python高级编程之反爬虫及应对方案

    写在前面 爬虫是 Python 的一个常见应用场景,很多练习项目就是让大家去爬某某网站 爬取网页的时候,你大概率会碰到一些反爬措施 这种情况下,你该如何应对呢? 本文梳理了常见的反爬措施和应对方案 接 ...

  3. python 关闭 定时开启_Python爬虫邮箱定时自动发送

    背景介绍 小说网站-笔趣看:      URL:http://www.biqukan.com/ 笔趣看是一个盗版小说网站,这里有很多起点中文网的小说,该网站小说的更新速度稍滞后于起点中文网正版小说的更 ...

  4. python sqlite3 带密码_Python爬虫+Flask,带你创建个网站!

    文化不分边界 人,为什么要读书?举个例子: 当看到天边飞鸟,你会说:"落霞与孤鹜齐飞,秋水共长天一色."而不是:"卧靠,好多鸟."; 当你失恋时你低吟浅唱道:& ...

  5. python爬图片_网络爬虫经验:反爬和反反爬

    我想很多人入门python是图片爬虫,就是HTTP请求,保存一下图片,用python实现非常快.网上很多爬虫的教程就讲到这里,实际上很单一,看了跟没看没什么区别,都是找一下网页的规律,然后Beauti ...

  6. python提高图片分辨率_python 获取图片分辨率的方法

    python 获取图片分辨率的方法 pil版: from PIL import Image filename = r'E:\data\yangben\0.jpg' img = Image.open(f ...

  7. python显示图片列表_python读取图片任意范围区域

    使用python进行图片处理,现在需要读出图片的任意一块区域,并将其转化为一维数组,方便后续卷积操作的使用. 下面使用两种方法进行处理: convert 函数 from PIL import Imag ...

  8. python去除图片马赛克_python 检测图片是否有马赛克

    首先是canny边缘检测,将图片的边缘检测出来,参考博客 原理讲的很清晰,给原博主一个赞 边缘检测之后按照正方形检索来判定是否是马赛克内容 原理知晓了之后就很好做了 话说matlab转化为python ...

  9. python调整图片亮度_python 调整图片亮度的示例

    实现效果 实现代码 import matplotlib.pyplot as plt from skimage import io file_name='D:/2020121173119242.png' ...

最新文章

  1. mysql python 接口_Python中的MySQL接口:PyMySQL MySQLdb
  2. 两院院士评选2020年中国、世界十大科技进展揭晓,「机器学习模拟上亿原子」等入选 | AI日报...
  3. Kubernetes的HTTPS和证书问题,汇总
  4. Oracle数据库中有关记录个数的查询
  5. 面试 Java 高级后端开发,要准备哪些知识点?
  6. [BZOJ2654] tree
  7. ctype.h(cctype) 头文件函数大全
  8. 论文浅尝 | KnowEdu: 一个自动构建教育知识图谱的系统
  9. Arrays类的排序(sort、parallelsort)
  10. [转载]常用内部排序算法--用VB6实现
  11. 设备 esp32_「ESP 教程」ESP32 如何运行 TensorFlow 模型
  12. IHttphandler之“验证码”服务器控件
  13. 输入法候选词排列的两种新方式
  14. Python语言三种优点。
  15. Java实现万年历【升级版】
  16. 好书推荐《月亮与六便士》
  17. 0基础学php燕十八,燕十八PHP公益培训 PHP基础视频教程 (60集全)
  18. OpenJudge 海贼王之伟大航路
  19. Google支付订单真伪的验证方式
  20. 2022年秋,工程伦理期末考试答案(仅供参考)

热门文章

  1. HDU 2516 取石子游戏 斐波纳契博弈
  2. Spark微博人口流动分析(1)
  3. Android应用开发之(通过ClipboardManager, ClipData进行复制粘贴)
  4. OpenCV学习笔记(一) 环境配置
  5. C++ Q16: dereferencing
  6. ubuntn终端缩小_缩小可以通过终端执行的工具
  7. 瑞银监控机器人组装法_瑞银公布Model 3后续拆解报告:装配问题严重 噪音勉强能接受...
  8. mysql 5.6.11 error 1059_mysql5.6.15问题如何解决
  9. linux内核全局变量重定位,关于可重定位文件中全局变量的一个重定位疑惑,借各位牛刀一用^...
  10. php 状态模式,PHP设计模式(十九)—状态模式 (State Pattern)