Python和Java的URL规范化库

urlcanon的Python项目详细描述


build status

python和java的url规范化(规范化)库。

目前提供:

  • 一个url解析器,它精确地保存输入字节
  • 尝试匹配规范化的预先计划的规范化规则集 隐含在parsing rules used by browsers
  • 另一种适合排序和前缀匹配的url序列化: SSURT

状态:稳定并在生产中使用一段时间。但没有api或输出 稳定的保证。Java和 python版本。

示例

Python

>>>importurlcanon>>>input_url="http://///EXAMPLE.com:80/foo/../bar">>>parsed_url=urlcanon.parse_url(input_url)>>>print(parsed_url)http://///EXAMPLE.com:80/foo/../bar>>>urlcanon.whatwg(parsed_url)<urlcanon.parse.ParsedUrlobjectat0x10eb13a58>>>>print(parsed_url)http://example.com/bar>>>print(parsed_url.ssurt())b'com,example,//:http/bar'>>>>>>rule=urlcanon.MatchRule(ssurt=b'com,example,//:http/bar')>>>urlcanon.whatwg.rule_applies(rule,b'https://example..com/bar/baz')False>>>urlcanon.whatwg.rule_applies(rule,b'HTtp:////eXAMple.Com/bar//baz//..///quu')True

pypi中提供了python版本:

pip install urlcanon

爪哇语

StringinputUrl="http://///EXAMPLE.com:80/foo/../bar";ParsedUrlparsedUrl=ParsedUrl.parseUrl(inputUrl);System.out.println(parsedUrl);// http://///EXAMPLE.com:80/foo/../bar
Canonicalizer.WHATWG.canonicalize(parsedUrl);System.out.println(parsedUrl);// http://example.com/bar
System.out.println(parsedUrl.ssurt());// "com,example,//:http/bar"

Java版本在Maven中央存储库中提供:

<dependency><groupId>org.netpreserve</groupId><artifactId>urlcanon</artifactId><version>0.1.1</version></dependency>

许可证

  • 版权所有(c)2016-2018互联网档案
  • 版权所有(c)2016-2017澳大利亚国家图书馆

根据apache许可证2.0版(以下简称“许可证”)授权;您可以 除非符合许可证,否则不要使用此软件。你可以 在

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则软件 根据许可证分发是按“原样”分发的, 无任何明示或默示的保证或条件。 有关管理权限的特定语言和 许可下的限制。

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

推荐PyPI第三方库


热门话题
java对称二维随机数数组   java Spring 3基于使用另一个数据源查询的连接字符串设置web应用程序数据源   java如何将类型保存为变量并在cast中使用   使用Struts的Jsp页面中出现java重复前缀错误   如何在SpringJava中自定义排序?   java如何高效地从自定义对象实现JList?   java如何在我的Android应用程序中调用外部库项目   java如何合并JTable的两列   java如何从字符串中提取括号数据   java Click recyclerView新建活动错误尝试调用虚拟方法   如何用Java表示字符串列表和列表?   swing java。awt。机器人按键事件为继续按下   java安全地忽略包含所有其他对象的JSON属性   java合并自定义双链表