Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python: XOR十六进制字符串

Python: XOR十六进制字符串
EN

Stack Overflow用户
提问于 2013-01-25 16:37:47
回答 2查看 63.9K关注 0票数 23

可能重复:

bitwise XOR of hex numbers in python

我试图在Python中对两个十六进制字符串进行XOR运算,但我真的不知道从哪里开始。

我有两个十六进制字符串:

代码语言:javascript
运行
AI代码解释
复制
a = "32510ba9a7b2bba9b8005d43a304b5714cc0bb0c8a34884dd91304b8ad40b62b07df44ba6e9d8a2368e51d04e0e7b207b70b9b8261112bacb6c866a232dfe257527dc29398f5f3251a0d47e503c66e935de81230b59b7afb5f41afa8d661cb"
b = "32510ba9babebbbefd001547a810e67149caee11d945cd7fc81a05e9f85aac650e9052ba6a8cd8257bf14d13e6f0a803b54fde9e77472dbff89d71b57bddef121336cb85ccb8f3315f4b52e301d16e9f52f90"

我应该用这个吗?

  1. return "".join([chr((x) ^ (y)) for (x,y) in zip(a[:len(b)], b)])
  2. return "".join([chr(ord(x) ^ ord(y)) for (x, y) in zip(a[:len(b)], b)])

我不明白上面两个代码的区别。为什么选择chrord?我也看到人们在使用int(hex,16)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-25 16:50:16

你在这里遗漏了一些东西。

首先,您不希望对这些字符串进行XOR运算。您拥有编码形式的字符串,因此,您需要首先对它们执行.decode()操作:

代码语言:javascript
运行
AI代码解释
复制
binary_a = a.decode("hex")
binary_b = b.decode("hex")

然后,正如前面提到的,一旦两个序列中的一个序列耗尽,zip()函数就会停止迭代。不需要切片。

您需要循环的第二个版本:首先,您希望获取字符的ASCII值:ord()生成一个数字。这是必要的,因为^只适用于数字。

在对数字执行XORing操作之后,您可以使用chr将数字转换回字符

代码语言:javascript
运行
AI代码解释
复制
def xor_strings(xs, ys):
    return "".join(chr(ord(x) ^ ord(y)) for x, y in zip(xs, ys))

xored = xor_strings(binary_a, binary_b).encode("hex")

在最后使用.encode(),我们将把二进制字符串重新转换成一个格式,打印效果很好。

票数 34
EN

Stack Overflow用户

发布于 2013-01-25 16:44:58

int('', 16)使用基数16将十六进制字符串转换为整数:

代码语言:javascript
运行
AI代码解释
复制
>>> int('f', 16)
15 
>>> int('10', 16)
16

所以要这样做:

代码语言:javascript
运行
AI代码解释
复制
result = int(a, 16) ^ int(b, 16) # convert to integers and xor them together
return '{:x}'.format(result)     # convert back to hexadecimal
票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14526231

复制
相关文章
Twitter信息抓取工具 – TinfoLeak
TinfoLeak是一款Python编写的Twitter用户信息抓取软件,主要的抓取的信息有: 1、基础信息包括名字、头像、关注者、所在位置等。 2、Twitter用户所使用的操作系统和设备信息。 3
FB客服
2018/02/05
2.2K0
Twitter信息抓取工具 – TinfoLeak
python爬虫图片抓取(python从网络上抓取照片)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128295.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/28
1.6K0
python爬虫图片抓取(python从网络上抓取照片)
微信公众号信息抓取方法(二)——抓取文章点赞、阅读、评论、小程序信息
上一篇文章文章将cookie信息保存到redis中, 则这一节主要是取出cookie, 并且构造方法去获取文章的点赞、阅读、评论、小程序信息, 而且不会访问文章内容页, 防止被微信认为是刷阅读数而封号, cookie的有效期保险一些为2个小时。所以在2个小时内一定要处理完数据
aox.lei
2018/09/10
6K1
使用Python网络爬虫抓取职位信息
前几天在Python粉丝问了一个Python网络爬虫的问题,这里拿出来给大家分享下。
前端皮皮
2023/08/17
3270
使用Python网络爬虫抓取职位信息
【玩转Lighthouse】 nodejs抓取邮箱收件信息
很多时候比如我们需要收取一些应用注册的验证码或者其他信息,我们都需要登录邮箱账号查看,但如果多账号多次重复收取信息则显得比较麻烦,所以我们利用mailPaser库结合nodejs在腾讯云Lighthouse上做一个邮件收取功能。并简要阐述购买Lighthouse和搭建的一步步过程。
咕咕过
2022/04/14
2.8K1
Scrapy递归抓取简书用户信息
好久没有录制实战教程视频,大邓就在圣诞节后直接上干货。 之前写过一期【视频教程-用python批量抓取简书用户信息】的文章,是自己造的轮子,今天我趁着刚入门scrapy和xpath,操刀重写这个任务。 一、实战项目简介递归 我们要大批量获取简书网站上的用户数据,最直接的办法是给一个初识的用户url,从这个用户的关注的和粉丝中再抽取url,循环往复,周而复始。这其实就是递归。 数据项 获取到的url,我们需要对其进行请求,解析出想要的数据 昵称-nickname 关注数-followed 粉丝数- fol
企鹅号小编
2018/01/26
1.4K0
抓取天气信息并定时推送邮件
最近正在看《Web Scraping with Python 》这本书,所以得动手实践一下,故作此文,通过抓取中国天气网的信息推送邮件信息,希望给忘记带伞的小伙伴们提个醒。。。
万能数据的小草
2020/02/19
1.4K0
实战项目五:抓取简书文章信息
源码: from fake_useragent import UserAgent from lxml import etree import lxml,requests url=
K同学啊
2019/03/04
4800
Python 抓取微信公众号账号信息
搜狗微信搜索提供两种类型的关键词搜索,一种是搜索公众号文章内容,另一种是直接搜索微信公众号。通过微信公众号搜索可以获取公众号的基本信息及最近发布的10条文章,今天来抓取一下微信公众号的账号信息(
一墨编程学习
2019/06/15
2.8K0
eml文件解析实例,简历信息抓取工具
先上工具效果图,如下图所示: 背景 某公司使用58同城进行人员招聘,当有应聘人员通过58同城给该公司投简历后,58同城会发送一份邮件到该公司的注册邮箱,邮件内容如上图右侧显示,主题为“应聘贵公司XXX
用户1637609
2018/04/12
2.4K1
eml文件解析实例,简历信息抓取工具
使用网络爬虫自动抓取图书信息
网络爬虫是一种从互联网上进行开放数据采集的重要手段。本案例通过使用Python的相关模块,开发一个简单的爬虫。实现从某图书网站自动下载感兴趣的图书信息的功能。主要实现的功能包括单页面图书信息下载,图书信息抽取,多页面图书信息下载等。本案例适合大数据初学者了解并动手实现自己的网络爬虫。
数据科学人工智能
2022/03/31
2.6K0
使用网络爬虫自动抓取图书信息
HttpClient(一)HttpClient抓取网页基本信息
一、HttpClient简介   HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,   并且它支持 HTTP 协议最新的版本和建议。   官方站点:http://hc.apache.org/   最新版本4.5 http://hc.apache.org/httpcomponents-client-4.5.x/   官方文档: http://hc.apache.org/httpcomponent
用户1195962
2018/01/18
1.6K0
HttpClient(一)HttpClient抓取网页基本信息
python爬虫教程:批量抓取 QQ 群信息
本文讲解Python批量抓取 QQ 群信息,包括群名称、群号、群人数、群主、地域、分类、标签、群简介等内容,返回 XLS / CSV / JSON 结果文件。
python学习教程
2019/08/06
5.6K3
从 LSASS 进程中抓取 NTLM 哈希
将 DLL 上传到目标机器。然后它使远程注册表能够修改 AutodialDLL 条目并启动/重新启动 BITS 服务。Svchosts 将加载我们的 DLL,再次将 AutodiaDLL 设置为默认值并执行 RPC 请求以强制 LSASS 加载与安全支持提供程序相同的 DLL。一旦 DLL 被 LSASS 加载,它将在进程内存中搜索以提取 NTLM 哈希和密钥/IV。
Khan安全团队
2023/02/23
9650
从 LSASS 进程中抓取 NTLM 哈希
微信公众号信息抓取方法(一)——抓取公众号历史消息列表数据
研究微信抓取之前, 看过知乎有大神写的比较完善的例子, 受到启发, 才完成了整个微信公众号的抓取。 微信公众号内容的批量采集与应用 微信抓取的难点: 1. 无法获取到微信公众号的信息(微信并没有提供列表) 2. 无法脱离客户端获取微信公众号历史消息页面 3. 可以获取到文章内容页但是脱离客户端后无法获取到点赞、阅读数据
aox.lei
2018/09/10
13.2K0
码农技术炒股之路——抓取股票基本信息、实时交易信息、主力动向信息
        从本节开始,我们开始介绍各个抓取和备份业务。(转载请指明出于breaksoftware的csdn博客)
方亮
2019/01/16
1.1K0
selenium抓取网易云音乐评论及歌曲信息
最近在研究springboot,就想着结合爬虫做个网易云音乐在线搜索的功能,先上波效果图把
code2roc
2023/07/19
4670
selenium抓取网易云音乐评论及歌曲信息
Python爬虫 - 解决动态网页信息抓取问题
这里我用天津市的信访页面来做示例,(地址:http://www.tj.gov.cn/zmhd/zmljl0524/wywtwqz/)。
K同学啊
2020/07/30
2K0
Python爬虫 - 解决动态网页信息抓取问题
Python爬虫抓取知乎所有用户信息
專 欄 ❈ 蜗牛仔,Python中文社区专栏作者,怒学Python爬虫,争当爬虫工程师, github地址: https://github.com/xiaobeibei26 ❈ 今天用递归写了个抓取
Python中文社区
2018/01/31
2K0
Python爬虫抓取知乎所有用户信息
转--使用Golang抓取京东全部商品分类信息
代码:
李海彬
2018/03/21
1.4K0
转--使用Golang抓取京东全部商品分类信息

相似问题

从抓取信息

120

从"QWidget“抓取信息

20

从url抓取信息?

42

从MPMediaItemPicker抓取歌曲信息

10

从其他应用抓取信息

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文