【发布时间】:2011-09-23 23:37:45
【问题描述】:
我似乎无法在 SO 上找到关于我的特定问题的问题,如果之前有人问过这个问题,请原谅我!
无论如何,我正在编写一个脚本来遍历一组 URL,并给我一个具有唯一参数的唯一 URL 列表。
我遇到的麻烦实际上是比较参数以消除多个重复项。有点难解释,所以举几个例子大概是为了:
假设我有一个这样的 URL 列表
- hxxp://www.somesite.com/page.php?id=3&title=derp
- hxxp://www.somesite.com/page.php?id=4&title=blah
- hxxp://www.somesite.com/page.php?id=3&c=32&title=thing
- hxxp://www.somesite.com/page.php?b=33&id=3
我让它将每个 URL 解析成一个列表列表,所以最终我有一个这样的列表:
sort = [['id', 'title'], ['id', 'c', 'title'], ['b', 'id']]
那时我需要想办法在我的列表中只给我 2 个列表:
new = [['id', 'c', 'title'], ['b', 'id']]
截至目前,我有一点要整理一下,我知道我已经很接近了,而且我已经为此猛烈抨击了几天了:(。有什么想法吗?
提前致谢! :)
编辑:抱歉不清楚!该脚本旨在为 web 应用程序 post-spidering 找到唯一的入口点。基本上,如果一个 URL 有 3 个唯一的入口点
['id', 'c', 'title']
我更喜欢具有 2 个唯一入口点的同一链接,例如:
['id', 'title']
所以我需要我的新列表来消除带有 2 的列表,并且仅当较小的变量在较大的集合中时才更喜欢带有 3 的列表。如果仍然不清楚,请告诉我,并感谢您的快速回复! :)
【问题讨论】:
-
规则是什么?如果有
['c', 'b']或['b', 'id', 'c']和['b', 'id', 'd']怎么办? -
我不明白。
['id', 'title']的副本是什么?是因为它是['id', 'c', 'title']的子集吗? -
yi 和 Marcelo 都是对的,您的标准没有明确定义。
-
我很抱歉不清楚。基本上我是一名网络应用程序测试人员,在爬取网站后,我正在寻找独特的入口点。因此,拥有具有相同入口点的 URL 列表对我来说毫无用处。如果 id 和 title 与 id、title 和 c 在同一页面上,则具有 3 个变量入口点的 url 将是有用的链接,然后与 2 相同。我将重新编辑我的问题试着澄清一下!谢谢:)
标签: python list sorting unique