用于检测浏览器更改的库

browser_compare的Python项目详细描述


这个小库检测浏览器降级和重大更改, 包括操作系统/浏览器系列更改。它可以作为一个指示器 用户浏览器真实性:如果使用身份验证cookies 在降级的浏览器上,它可能会从备份中还原。

同样,出现在完全不同平台上的cookie 或者浏览器可能被盗或被复制。这张支票不是 万无一失,因为攻击者也很容易欺骗用户代理。

示例用法:

from browser_compare import *

old_ua = 'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0'
new_ua = 'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0'
another_ua = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:27.0) Gecko/20100101 Firefox/27.0'

bc = BrowserCompare(old_ua, new_ua)
print bc.compare() # True

bc = BrowserCompare(new_ua, old_ua)
print bc.compare() # raises UADowngradedException

bc = BrowserCompare(old_ua, another_ua)
print bc.compare() # raises UAChangedException

使用UAException捕获用户代理的任何问题,如果您没有 不管为什么被拒绝。其他信息可在 exception.msg

许可证

根据麻省理工学院许可证获得许可:

版权所有(c)2014 Olli Jarvaolli@jarva.fi

兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:

上述版权公告及本许可公告须包括在 软件的所有副本或大部分。

本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与软件、使用或其他交易有关 软件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java FSReadOnlyChiveFileSystem异常   java增量和减量不起作用   java PigLatin语句转换器方法给出了“indexoutofboundsexception”错误等   java从使用布局的页面适配器中删除特定位置页面。刷卡   api查看java源代码有任何规定的方式吗?   快速查找表中的行的java算法   web服务单击将SOAP wsdl转换为JAXB java类   java后转换完成不工作   java访问文件并只提取带注释的方法,从而进一步处理它们   java使用JDBC从SQL INSERT获取序列   java ECLIPSE:构建失败   处理对命令行的读/写操作。exe Java   java遇到过早的文件结束异常   java unity使用Xamarin吗?   java之间的区别是什么:使用JFrame类中的getContentPane()和JRootPane中的getContentPane()?   用于Java正则表达式语法的正则表达式ANTLR语法   java hibernate。cfg。即使在运行mvn hibernate3:hbm2cfgxml时,也没有创建xml   eclipse如何将数据写入Java文件中的特定行号